<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="integrations_v1.html">Application Integration API</a> . <a href="integrations_v1.projects.html">projects</a> . <a href="integrations_v1.projects.locations.html">locations</a> . <a href="integrations_v1.projects.locations.integrations.html">integrations</a> . <a href="integrations_v1.projects.locations.integrations.versions.html">versions</a> . <a href="integrations_v1.projects.locations.integrations.versions.testCases.html">testCases</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
  <code><a href="#create">create(parent, body=None, testCaseId=None, x__xgafv=None)</a></code></p>
<p class="firstline">Creates a new test case</p>
<p class="toc_element">
  <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
<p class="firstline">Deletes a test case</p>
<p class="toc_element">
  <code><a href="#download">download(name, fileFormat=None, x__xgafv=None)</a></code></p>
<p class="firstline">Downloads a test case. Retrieves the `TestCase` for a given `test_case_id` and returns the response as a string.</p>
<p class="toc_element">
  <code><a href="#execute">execute(parent, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Executes all test cases in an integration version.</p>
<p class="toc_element">
  <code><a href="#executeTest">executeTest(testCaseName, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Executes functional test</p>
<p class="toc_element">
  <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
<p class="firstline">Get a test case</p>
<p class="toc_element">
  <code><a href="#list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, readMask=None, x__xgafv=None)</a></code></p>
<p class="firstline">Lists all the test cases that satisfy the filters.</p>
<p class="toc_element">
  <code><a href="#list_next">list_next()</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
  <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
<p class="firstline">Updates a test case</p>
<p class="toc_element">
  <code><a href="#takeoverEditLock">takeoverEditLock(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Clear the lock fields and assign them to current user</p>
<p class="toc_element">
  <code><a href="#upload">upload(parent, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Uploads a test case. The content can be a previously downloaded test case. Performs the same function as CreateTestCase, but accepts input in a string format, which holds the complete representation of the TestCase content.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="close">close()</code>
  <pre>Close httplib2 connections.</pre>
</div>

<div class="method">
    <code class="details" id="create">create(parent, body=None, testCaseId=None, x__xgafv=None)</code>
  <pre>Creates a new test case

Args:
  parent: string, Required. The parent resource where this test case will be created. Format: projects/{project}/locations/{location}/integrations/{integration}/versions/{integration_version} (required)
  body: object, The request body.
    The object takes the form of:

{ # Defines the functional test case for Application Integration. Next available id: 15
  &quot;createTime&quot;: &quot;A String&quot;, # Auto-generated.
  &quot;creatorEmail&quot;: &quot;A String&quot;, # Optional. The creator&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;databasePersistencePolicy&quot;: &quot;A String&quot;, # Optional. Various policies for how to persist the test execution info including execution info, execution export info, execution metadata index and execution param index..
  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the test case.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of test case.
  &quot;lastModifierEmail&quot;: &quot;A String&quot;, # The last modifier&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;lockHolderEmail&quot;: &quot;A String&quot;, # Optional. The edit lock holder&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;name&quot;: &quot;A String&quot;, # Output only. Auto-generated primary key.
  &quot;testInputParameters&quot;: [ # Optional. Parameters that are expected to be passed to the test case when the test case is triggered. This gives the user the ability to provide default values. This should include all the output variables of the trigger as input variables.
    { # Integration Parameter is defined in the integration config and are used to provide information about data types of the expected parameters and provide any default values if needed. They can also be used to add custom attributes. These are static in nature and should not be used for dynamic event definition.
      &quot;containsLargeData&quot;: True or False, # Indicates whether this variable contains large data and need to be uploaded to Cloud Storage.
      &quot;dataType&quot;: &quot;A String&quot;, # Type of the parameter.
      &quot;defaultValue&quot;: { # The type of the parameter. # Default values for the defined keys. Each value can either be string, int, double or any proto message or a serialized object.
        &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
          &quot;booleanValues&quot;: [ # Boolean array.
            True or False,
          ],
        },
        &quot;booleanValue&quot;: True or False, # Boolean.
        &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
          &quot;doubleValues&quot;: [ # Double number array.
            3.14,
          ],
        },
        &quot;doubleValue&quot;: 3.14, # Double Number.
        &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
          &quot;intValues&quot;: [ # Integer array.
            &quot;A String&quot;,
          ],
        },
        &quot;intValue&quot;: &quot;A String&quot;, # Integer.
        &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
        &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
          &quot;stringValues&quot;: [ # String array.
            &quot;A String&quot;,
          ],
        },
        &quot;stringValue&quot;: &quot;A String&quot;, # String.
      },
      &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the parameter.
      &quot;displayName&quot;: &quot;A String&quot;, # The name (without prefix) to be displayed in the UI for this parameter. E.g. if the key is &quot;foo.bar.myName&quot;, then the name would be &quot;myName&quot;.
      &quot;inputOutputType&quot;: &quot;A String&quot;, # Specifies the input/output type for the parameter.
      &quot;isTransient&quot;: True or False, # Whether this parameter is a transient parameter.
      &quot;jsonSchema&quot;: &quot;A String&quot;, # This schema will be used to validate runtime JSON-typed values of this parameter.
      &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
      &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
      &quot;producer&quot;: &quot;A String&quot;, # The identifier of the node (TaskConfig/TriggerConfig) this parameter was produced by, if it is a transient param or a copy of an input param.
      &quot;searchable&quot;: True or False, # Searchable in the execution log or not.
    },
  ],
  &quot;testTaskConfigs&quot;: [ # Optional. However, the test case doesn&#x27;t mock or assert anything without test_task_configs.
    { # The task mock configuration details and assertions for functional tests. Next available id: 6
      &quot;assertions&quot;: [ # Optional. List of conditions or expressions which should be evaluated to true unless there is a bug/problem in the integration. These are evaluated one the task execution is completed as per the mock strategy in test case
        { # An assertion which will check for a condition over task execution status or an expression for task output variables
          &quot;assertionStrategy&quot;: &quot;A String&quot;, # Optional. The type of assertion to perform.
          &quot;condition&quot;: &quot;A String&quot;, # Optional. Standard filter expression for ASSERT_CONDITION to succeed
          &quot;parameter&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4 # Optional. Key-value pair for ASSERT_EQUALS, ASSERT_NOT_EQUALS, ASSERT_CONTAINS to succeed
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
          &quot;retryCount&quot;: 42, # Number of times given task should be retried in case of ASSERT_FAILED_EXECUTION
        },
      ],
      &quot;mockConfig&quot;: { # The configuration for mocking of a task during test execution Next available id: 4 # Optional. Defines how to mock the given task during test execution
        &quot;failedExecutions&quot;: &quot;A String&quot;, # Optional. Number of times the given task should fail for failure mock strategy
        &quot;mockStrategy&quot;: &quot;A String&quot;, # Mockstrategy defines how the particular task should be mocked during test execution
        &quot;parameters&quot;: [ # Optional. List of key-value pairs for specific mock strategy
          { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
        ],
      },
      &quot;task&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task name in integration which will be mocked by this test task config
      &quot;taskConfig&quot;: { # The task configuration details. This is not the implementation of Task. There might be multiple TaskConfigs for the same Task. # Optional. Auto-generated.
        &quot;conditionalFailurePolicies&quot;: { # Conditional task failur retry strategies # Optional. The list of conditional failure policies that will be applied to the task in order.
          &quot;defaultFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # The default failure policy to be applied if no conditional failure policy matches.
            &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
            &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
            &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
            &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
          },
          &quot;failurePolicies&quot;: [ # The list of failure policies that will be applied to the task in order.
            { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied).
              &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
              &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
              &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
              &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
            },
          ],
        },
        &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
        &quot;displayName&quot;: &quot;A String&quot;, # Optional. User-provided label that is attached to this TaskConfig in the UI.
        &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
        &quot;externalTaskType&quot;: &quot;A String&quot;, # Optional. External task type of the task
        &quot;failurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for asynchronous calls to Eventbus alone (Post To Queue, Schedule etc.).
          &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
          &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
          &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
          &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
        },
        &quot;jsonValidationOption&quot;: &quot;A String&quot;, # Optional. If set, overrides the option configured in the Task implementation class.
        &quot;nextTasks&quot;: [ # Optional. The set of tasks that are next in line to be executed as per the execution graph defined for the parent event, specified by `event_config_id`. Each of these next tasks are executed only if the condition associated with them evaluates to true.
          { # The task that is next in line to be executed, if the condition specified evaluated to true.
            &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
            &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
            &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
            &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
            &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
          },
        ],
        &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution of the next set of tasks for the current task.
        &quot;parameters&quot;: { # Optional. The customized parameters the user can pass to this task.
          &quot;a_key&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
        },
        &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
          &quot;x&quot;: 42, # Required. X axis of the coordinate
          &quot;y&quot;: 42, # Required. Y axis of the coordinate
        },
        &quot;successPolicy&quot;: { # Policy that dictates the behavior for the task after it completes successfully. # Optional. Determines what action to take upon successful task completion.
          &quot;finalState&quot;: &quot;A String&quot;, # State to which the execution snapshot status will be set if the task succeeds.
        },
        &quot;synchronousCallFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for synchronous calls to Eventbus alone (Post).
          &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
          &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
          &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
          &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
        },
        &quot;task&quot;: &quot;A String&quot;, # Optional. The name for the task.
        &quot;taskExecutionStrategy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution strategy of this task.
        &quot;taskId&quot;: &quot;A String&quot;, # Required. The identifier of this task within its parent event config, specified by the client. This should be unique among all the tasks belong to the same event config. We use this field as the identifier to find next tasks (via field `next_tasks.task_id`).
        &quot;taskTemplate&quot;: &quot;A String&quot;, # Optional. Used to define task-template name if task is of type task-template
      },
      &quot;taskNumber&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task in integration which will be mocked by this test task config
    },
  ],
  &quot;triggerConfig&quot;: { # Configuration detail of a trigger. # Optional. Auto-generated.
    &quot;alertConfig&quot;: [ # Optional. An alert threshold configuration for the [trigger + client + integration] tuple. If these values are not specified in the trigger config, default values will be populated by the system. Note that there must be exactly one alert threshold configured per [client + trigger + integration] when published.
      { # Message to be used to configure custom alerting in the {@code EventConfig} protos for an event.
        &quot;aggregationPeriod&quot;: &quot;A String&quot;, # The period over which the metric value should be aggregated and evaluated. Format is , where integer should be a positive integer and unit should be one of (s,m,h,d,w) meaning (second, minute, hour, day, week). For an EXPECTED_MIN threshold, this aggregation_period must be lesser than 24 hours.
        &quot;alertThreshold&quot;: 42, # For how many contiguous aggregation periods should the expected min or max be violated for the alert to be fired.
        &quot;disableAlert&quot;: True or False, # Set to false by default. When set to true, the metrics are not aggregated or pushed to Monarch for this integration alert.
        &quot;displayName&quot;: &quot;A String&quot;, # Name of the alert. This will be displayed in the alert subject. If set, this name should be unique within the scope of the integration.
        &quot;durationThreshold&quot;: &quot;A String&quot;, # Should be specified only for *AVERAGE_DURATION and *PERCENTILE_DURATION metrics. This member should be used to specify what duration value the metrics should exceed for the alert to trigger.
        &quot;metricType&quot;: &quot;A String&quot;, # The type of metric.
        &quot;onlyFinalAttempt&quot;: True or False, # For either events or tasks, depending on the type of alert, count only final attempts, not retries.
        &quot;thresholdType&quot;: &quot;A String&quot;, # The threshold type, whether lower(expected_min) or upper(expected_max), for which this alert is being configured. If value falls below expected_min or exceeds expected_max, an alert will be fired.
        &quot;thresholdValue&quot;: { # The threshold value of the metric, above or below which the alert should be triggered. See EventAlertConfig or TaskAlertConfig for the different alert metric types in each case. For the *RATE metrics, one or both of these fields may be set. Zero is the default value and can be left at that. For *PERCENTILE_DURATION metrics, one or both of these fields may be set, and also, the duration threshold value should be specified in the threshold_duration_ms member below. For *AVERAGE_DURATION metrics, these fields should not be set at all. A different member, threshold_duration_ms, must be set in the EventAlertConfig or the TaskAlertConfig. # The metric value, above or below which the alert should be triggered.
          &quot;absolute&quot;: &quot;A String&quot;, # Absolute value threshold.
          &quot;percentage&quot;: 42, # Percentage threshold.
        },
      },
    ],
    &quot;cloudSchedulerConfig&quot;: { # Cloud Scheduler Trigger configuration # Optional. Cloud Scheduler Trigger related metadata
      &quot;cronTab&quot;: &quot;A String&quot;, # Required. The cron tab of cloud scheduler trigger.
      &quot;errorMessage&quot;: &quot;A String&quot;, # Optional. When the job was deleted from Pantheon UI, error_message will be populated when Get/List integrations
      &quot;location&quot;: &quot;A String&quot;, # Required. The location where associated cloud scheduler job will be created
      &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # Required. Service account used by Cloud Scheduler to trigger the integration at scheduled time
    },
    &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
    &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
    &quot;inputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of input variables for the api trigger.
      &quot;names&quot;: [ # Optional. List of variable names.
        &quot;A String&quot;,
      ],
    },
    &quot;label&quot;: &quot;A String&quot;, # Optional. The user created label for a particular trigger.
    &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. Dictates how next tasks will be executed.
    &quot;outputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of output variables for the api trigger.
      &quot;names&quot;: [ # Optional. List of variable names.
        &quot;A String&quot;,
      ],
    },
    &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
      &quot;x&quot;: 42, # Required. X axis of the coordinate
      &quot;y&quot;: 42, # Required. Y axis of the coordinate
    },
    &quot;properties&quot;: { # Optional. Configurable properties of the trigger, not to be confused with integration parameters. E.g. &quot;name&quot; is a property for API triggers and &quot;subscription&quot; is a property for Pub/sub triggers.
      &quot;a_key&quot;: &quot;A String&quot;,
    },
    &quot;startTasks&quot;: [ # Optional. Set of tasks numbers from where the integration execution is started by this trigger. If this is empty, then integration is executed with default start tasks. In the list of start tasks, none of two tasks can have direct ancestor-descendant relationships (i.e. in a same integration execution graph).
      { # The task that is next in line to be executed, if the condition specified evaluated to true.
        &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
        &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
        &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
        &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
        &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
      },
    ],
    &quot;trigger&quot;: &quot;A String&quot;, # Optional. Name of the trigger. Example: &quot;API Trigger&quot;, &quot;Cloud Pub Sub Trigger&quot; When set will be sent out to monitoring dashabord for tracking purpose.
    &quot;triggerId&quot;: &quot;A String&quot;, # Optional. Auto-generated trigger ID. The ID is based on the properties that you define in the trigger config. For example, for an API trigger, the trigger ID follows the format: api_trigger/TRIGGER_NAME Where trigger config has properties with value {&quot;Trigger name&quot;: TRIGGER_NAME}
    &quot;triggerNumber&quot;: &quot;A String&quot;, # Required. A number to uniquely identify each trigger config within the integration on UI.
    &quot;triggerType&quot;: &quot;A String&quot;, # Optional. Type of trigger
  },
  &quot;triggerId&quot;: &quot;A String&quot;, # Required. This defines the trigger ID in workflow which is considered to be executed as starting point of the test case
  &quot;updateTime&quot;: &quot;A String&quot;, # Auto-generated.
}

  testCaseId: string, Required. Required
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Defines the functional test case for Application Integration. Next available id: 15
  &quot;createTime&quot;: &quot;A String&quot;, # Auto-generated.
  &quot;creatorEmail&quot;: &quot;A String&quot;, # Optional. The creator&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;databasePersistencePolicy&quot;: &quot;A String&quot;, # Optional. Various policies for how to persist the test execution info including execution info, execution export info, execution metadata index and execution param index..
  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the test case.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of test case.
  &quot;lastModifierEmail&quot;: &quot;A String&quot;, # The last modifier&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;lockHolderEmail&quot;: &quot;A String&quot;, # Optional. The edit lock holder&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;name&quot;: &quot;A String&quot;, # Output only. Auto-generated primary key.
  &quot;testInputParameters&quot;: [ # Optional. Parameters that are expected to be passed to the test case when the test case is triggered. This gives the user the ability to provide default values. This should include all the output variables of the trigger as input variables.
    { # Integration Parameter is defined in the integration config and are used to provide information about data types of the expected parameters and provide any default values if needed. They can also be used to add custom attributes. These are static in nature and should not be used for dynamic event definition.
      &quot;containsLargeData&quot;: True or False, # Indicates whether this variable contains large data and need to be uploaded to Cloud Storage.
      &quot;dataType&quot;: &quot;A String&quot;, # Type of the parameter.
      &quot;defaultValue&quot;: { # The type of the parameter. # Default values for the defined keys. Each value can either be string, int, double or any proto message or a serialized object.
        &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
          &quot;booleanValues&quot;: [ # Boolean array.
            True or False,
          ],
        },
        &quot;booleanValue&quot;: True or False, # Boolean.
        &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
          &quot;doubleValues&quot;: [ # Double number array.
            3.14,
          ],
        },
        &quot;doubleValue&quot;: 3.14, # Double Number.
        &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
          &quot;intValues&quot;: [ # Integer array.
            &quot;A String&quot;,
          ],
        },
        &quot;intValue&quot;: &quot;A String&quot;, # Integer.
        &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
        &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
          &quot;stringValues&quot;: [ # String array.
            &quot;A String&quot;,
          ],
        },
        &quot;stringValue&quot;: &quot;A String&quot;, # String.
      },
      &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the parameter.
      &quot;displayName&quot;: &quot;A String&quot;, # The name (without prefix) to be displayed in the UI for this parameter. E.g. if the key is &quot;foo.bar.myName&quot;, then the name would be &quot;myName&quot;.
      &quot;inputOutputType&quot;: &quot;A String&quot;, # Specifies the input/output type for the parameter.
      &quot;isTransient&quot;: True or False, # Whether this parameter is a transient parameter.
      &quot;jsonSchema&quot;: &quot;A String&quot;, # This schema will be used to validate runtime JSON-typed values of this parameter.
      &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
      &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
      &quot;producer&quot;: &quot;A String&quot;, # The identifier of the node (TaskConfig/TriggerConfig) this parameter was produced by, if it is a transient param or a copy of an input param.
      &quot;searchable&quot;: True or False, # Searchable in the execution log or not.
    },
  ],
  &quot;testTaskConfigs&quot;: [ # Optional. However, the test case doesn&#x27;t mock or assert anything without test_task_configs.
    { # The task mock configuration details and assertions for functional tests. Next available id: 6
      &quot;assertions&quot;: [ # Optional. List of conditions or expressions which should be evaluated to true unless there is a bug/problem in the integration. These are evaluated one the task execution is completed as per the mock strategy in test case
        { # An assertion which will check for a condition over task execution status or an expression for task output variables
          &quot;assertionStrategy&quot;: &quot;A String&quot;, # Optional. The type of assertion to perform.
          &quot;condition&quot;: &quot;A String&quot;, # Optional. Standard filter expression for ASSERT_CONDITION to succeed
          &quot;parameter&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4 # Optional. Key-value pair for ASSERT_EQUALS, ASSERT_NOT_EQUALS, ASSERT_CONTAINS to succeed
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
          &quot;retryCount&quot;: 42, # Number of times given task should be retried in case of ASSERT_FAILED_EXECUTION
        },
      ],
      &quot;mockConfig&quot;: { # The configuration for mocking of a task during test execution Next available id: 4 # Optional. Defines how to mock the given task during test execution
        &quot;failedExecutions&quot;: &quot;A String&quot;, # Optional. Number of times the given task should fail for failure mock strategy
        &quot;mockStrategy&quot;: &quot;A String&quot;, # Mockstrategy defines how the particular task should be mocked during test execution
        &quot;parameters&quot;: [ # Optional. List of key-value pairs for specific mock strategy
          { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
        ],
      },
      &quot;task&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task name in integration which will be mocked by this test task config
      &quot;taskConfig&quot;: { # The task configuration details. This is not the implementation of Task. There might be multiple TaskConfigs for the same Task. # Optional. Auto-generated.
        &quot;conditionalFailurePolicies&quot;: { # Conditional task failur retry strategies # Optional. The list of conditional failure policies that will be applied to the task in order.
          &quot;defaultFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # The default failure policy to be applied if no conditional failure policy matches.
            &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
            &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
            &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
            &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
          },
          &quot;failurePolicies&quot;: [ # The list of failure policies that will be applied to the task in order.
            { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied).
              &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
              &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
              &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
              &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
            },
          ],
        },
        &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
        &quot;displayName&quot;: &quot;A String&quot;, # Optional. User-provided label that is attached to this TaskConfig in the UI.
        &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
        &quot;externalTaskType&quot;: &quot;A String&quot;, # Optional. External task type of the task
        &quot;failurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for asynchronous calls to Eventbus alone (Post To Queue, Schedule etc.).
          &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
          &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
          &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
          &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
        },
        &quot;jsonValidationOption&quot;: &quot;A String&quot;, # Optional. If set, overrides the option configured in the Task implementation class.
        &quot;nextTasks&quot;: [ # Optional. The set of tasks that are next in line to be executed as per the execution graph defined for the parent event, specified by `event_config_id`. Each of these next tasks are executed only if the condition associated with them evaluates to true.
          { # The task that is next in line to be executed, if the condition specified evaluated to true.
            &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
            &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
            &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
            &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
            &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
          },
        ],
        &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution of the next set of tasks for the current task.
        &quot;parameters&quot;: { # Optional. The customized parameters the user can pass to this task.
          &quot;a_key&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
        },
        &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
          &quot;x&quot;: 42, # Required. X axis of the coordinate
          &quot;y&quot;: 42, # Required. Y axis of the coordinate
        },
        &quot;successPolicy&quot;: { # Policy that dictates the behavior for the task after it completes successfully. # Optional. Determines what action to take upon successful task completion.
          &quot;finalState&quot;: &quot;A String&quot;, # State to which the execution snapshot status will be set if the task succeeds.
        },
        &quot;synchronousCallFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for synchronous calls to Eventbus alone (Post).
          &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
          &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
          &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
          &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
        },
        &quot;task&quot;: &quot;A String&quot;, # Optional. The name for the task.
        &quot;taskExecutionStrategy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution strategy of this task.
        &quot;taskId&quot;: &quot;A String&quot;, # Required. The identifier of this task within its parent event config, specified by the client. This should be unique among all the tasks belong to the same event config. We use this field as the identifier to find next tasks (via field `next_tasks.task_id`).
        &quot;taskTemplate&quot;: &quot;A String&quot;, # Optional. Used to define task-template name if task is of type task-template
      },
      &quot;taskNumber&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task in integration which will be mocked by this test task config
    },
  ],
  &quot;triggerConfig&quot;: { # Configuration detail of a trigger. # Optional. Auto-generated.
    &quot;alertConfig&quot;: [ # Optional. An alert threshold configuration for the [trigger + client + integration] tuple. If these values are not specified in the trigger config, default values will be populated by the system. Note that there must be exactly one alert threshold configured per [client + trigger + integration] when published.
      { # Message to be used to configure custom alerting in the {@code EventConfig} protos for an event.
        &quot;aggregationPeriod&quot;: &quot;A String&quot;, # The period over which the metric value should be aggregated and evaluated. Format is , where integer should be a positive integer and unit should be one of (s,m,h,d,w) meaning (second, minute, hour, day, week). For an EXPECTED_MIN threshold, this aggregation_period must be lesser than 24 hours.
        &quot;alertThreshold&quot;: 42, # For how many contiguous aggregation periods should the expected min or max be violated for the alert to be fired.
        &quot;disableAlert&quot;: True or False, # Set to false by default. When set to true, the metrics are not aggregated or pushed to Monarch for this integration alert.
        &quot;displayName&quot;: &quot;A String&quot;, # Name of the alert. This will be displayed in the alert subject. If set, this name should be unique within the scope of the integration.
        &quot;durationThreshold&quot;: &quot;A String&quot;, # Should be specified only for *AVERAGE_DURATION and *PERCENTILE_DURATION metrics. This member should be used to specify what duration value the metrics should exceed for the alert to trigger.
        &quot;metricType&quot;: &quot;A String&quot;, # The type of metric.
        &quot;onlyFinalAttempt&quot;: True or False, # For either events or tasks, depending on the type of alert, count only final attempts, not retries.
        &quot;thresholdType&quot;: &quot;A String&quot;, # The threshold type, whether lower(expected_min) or upper(expected_max), for which this alert is being configured. If value falls below expected_min or exceeds expected_max, an alert will be fired.
        &quot;thresholdValue&quot;: { # The threshold value of the metric, above or below which the alert should be triggered. See EventAlertConfig or TaskAlertConfig for the different alert metric types in each case. For the *RATE metrics, one or both of these fields may be set. Zero is the default value and can be left at that. For *PERCENTILE_DURATION metrics, one or both of these fields may be set, and also, the duration threshold value should be specified in the threshold_duration_ms member below. For *AVERAGE_DURATION metrics, these fields should not be set at all. A different member, threshold_duration_ms, must be set in the EventAlertConfig or the TaskAlertConfig. # The metric value, above or below which the alert should be triggered.
          &quot;absolute&quot;: &quot;A String&quot;, # Absolute value threshold.
          &quot;percentage&quot;: 42, # Percentage threshold.
        },
      },
    ],
    &quot;cloudSchedulerConfig&quot;: { # Cloud Scheduler Trigger configuration # Optional. Cloud Scheduler Trigger related metadata
      &quot;cronTab&quot;: &quot;A String&quot;, # Required. The cron tab of cloud scheduler trigger.
      &quot;errorMessage&quot;: &quot;A String&quot;, # Optional. When the job was deleted from Pantheon UI, error_message will be populated when Get/List integrations
      &quot;location&quot;: &quot;A String&quot;, # Required. The location where associated cloud scheduler job will be created
      &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # Required. Service account used by Cloud Scheduler to trigger the integration at scheduled time
    },
    &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
    &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
    &quot;inputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of input variables for the api trigger.
      &quot;names&quot;: [ # Optional. List of variable names.
        &quot;A String&quot;,
      ],
    },
    &quot;label&quot;: &quot;A String&quot;, # Optional. The user created label for a particular trigger.
    &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. Dictates how next tasks will be executed.
    &quot;outputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of output variables for the api trigger.
      &quot;names&quot;: [ # Optional. List of variable names.
        &quot;A String&quot;,
      ],
    },
    &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
      &quot;x&quot;: 42, # Required. X axis of the coordinate
      &quot;y&quot;: 42, # Required. Y axis of the coordinate
    },
    &quot;properties&quot;: { # Optional. Configurable properties of the trigger, not to be confused with integration parameters. E.g. &quot;name&quot; is a property for API triggers and &quot;subscription&quot; is a property for Pub/sub triggers.
      &quot;a_key&quot;: &quot;A String&quot;,
    },
    &quot;startTasks&quot;: [ # Optional. Set of tasks numbers from where the integration execution is started by this trigger. If this is empty, then integration is executed with default start tasks. In the list of start tasks, none of two tasks can have direct ancestor-descendant relationships (i.e. in a same integration execution graph).
      { # The task that is next in line to be executed, if the condition specified evaluated to true.
        &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
        &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
        &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
        &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
        &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
      },
    ],
    &quot;trigger&quot;: &quot;A String&quot;, # Optional. Name of the trigger. Example: &quot;API Trigger&quot;, &quot;Cloud Pub Sub Trigger&quot; When set will be sent out to monitoring dashabord for tracking purpose.
    &quot;triggerId&quot;: &quot;A String&quot;, # Optional. Auto-generated trigger ID. The ID is based on the properties that you define in the trigger config. For example, for an API trigger, the trigger ID follows the format: api_trigger/TRIGGER_NAME Where trigger config has properties with value {&quot;Trigger name&quot;: TRIGGER_NAME}
    &quot;triggerNumber&quot;: &quot;A String&quot;, # Required. A number to uniquely identify each trigger config within the integration on UI.
    &quot;triggerType&quot;: &quot;A String&quot;, # Optional. Type of trigger
  },
  &quot;triggerId&quot;: &quot;A String&quot;, # Required. This defines the trigger ID in workflow which is considered to be executed as starting point of the test case
  &quot;updateTime&quot;: &quot;A String&quot;, # Auto-generated.
}</pre>
</div>

<div class="method">
    <code class="details" id="delete">delete(name, x__xgafv=None)</code>
  <pre>Deletes a test case

Args:
  name: string, Required. ID for the test case to be deleted (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
}</pre>
</div>

<div class="method">
    <code class="details" id="download">download(name, fileFormat=None, x__xgafv=None)</code>
  <pre>Downloads a test case. Retrieves the `TestCase` for a given `test_case_id` and returns the response as a string.

Args:
  name: string, Required. The test case to download. Format: projects/{project}/locations/{location}/integrations/{integration}/versions/{integration_version}/testCases/{test_case_id} (required)
  fileFormat: string, File format for download request.
    Allowed values
      FILE_FORMAT_UNSPECIFIED - Unspecified file format
      JSON - JSON File Format
      YAML - YAML File Format
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response for DownloadTestCase.
  &quot;content&quot;: &quot;A String&quot;, # String representation of the test case.
}</pre>
</div>

<div class="method">
    <code class="details" id="execute">execute(parent, body=None, x__xgafv=None)</code>
  <pre>Executes all test cases in an integration version.

Args:
  parent: string, Required. The parent resource whose test cases are executed. Format: projects/{project}/locations/{location}/integrations/{integration}/versions/{integration_version} (required)
  body: object, The request body.
    The object takes the form of:

{ # Request for ExecuteTestCases.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response for ExecuteTestCases.
  &quot;executeTestCaseResponses&quot;: [ # Results of each execution of test cases in an integration version.
    { # The response for executing a functional test.
      &quot;assertionResults&quot;: [ # Results of each assertions ran during execution of test case.
        { # The result of an assertion.
          &quot;assertion&quot;: { # An assertion which will check for a condition over task execution status or an expression for task output variables # Assertion that was run.
            &quot;assertionStrategy&quot;: &quot;A String&quot;, # Optional. The type of assertion to perform.
            &quot;condition&quot;: &quot;A String&quot;, # Optional. Standard filter expression for ASSERT_CONDITION to succeed
            &quot;parameter&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4 # Optional. Key-value pair for ASSERT_EQUALS, ASSERT_NOT_EQUALS, ASSERT_CONTAINS to succeed
              &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
              &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
              &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
                &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                  &quot;booleanValues&quot;: [ # Boolean array.
                    True or False,
                  ],
                },
                &quot;booleanValue&quot;: True or False, # Boolean.
                &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                  &quot;doubleValues&quot;: [ # Double number array.
                    3.14,
                  ],
                },
                &quot;doubleValue&quot;: 3.14, # Double Number.
                &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                  &quot;intValues&quot;: [ # Integer array.
                    &quot;A String&quot;,
                  ],
                },
                &quot;intValue&quot;: &quot;A String&quot;, # Integer.
                &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
                &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                  &quot;stringValues&quot;: [ # String array.
                    &quot;A String&quot;,
                  ],
                },
                &quot;stringValue&quot;: &quot;A String&quot;, # String.
              },
            },
            &quot;retryCount&quot;: 42, # Number of times given task should be retried in case of ASSERT_FAILED_EXECUTION
          },
          &quot;failureMessage&quot;: &quot;A String&quot;, # Details of the assertion failure
          &quot;status&quot;: &quot;A String&quot;, # Status of assertion to signify if the assertion succeeded or failed
          &quot;taskName&quot;: &quot;A String&quot;, # Task name of task where the assertion was run.
          &quot;taskNumber&quot;: &quot;A String&quot;, # Task number of task where the assertion was run.
        },
      ],
      &quot;executionId&quot;: &quot;A String&quot;, # The id of the execution corresponding to this run of integration.
      &quot;outputParameters&quot;: { # OUTPUT parameters in format of Map. Where Key is the name of the parameter. Note: Name of the system generated parameters are wrapped by backtick(`) to distinguish them from the user defined parameters.
        &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
      },
      &quot;testExecutionState&quot;: &quot;A String&quot;, # State of the test case execution
    },
  ],
}</pre>
</div>

<div class="method">
    <code class="details" id="executeTest">executeTest(testCaseName, body=None, x__xgafv=None)</code>
  <pre>Executes functional test

Args:
  testCaseName: string, Required. Test case resource name (required)
  body: object, The request body.
    The object takes the form of:

{ # The request for executing a functional test.
  &quot;inputParameters&quot;: { # Optional. Input parameters used by test case execution.
    &quot;a_key&quot;: { # The type of the parameter.
      &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
        &quot;booleanValues&quot;: [ # Boolean array.
          True or False,
        ],
      },
      &quot;booleanValue&quot;: True or False, # Boolean.
      &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
        &quot;doubleValues&quot;: [ # Double number array.
          3.14,
        ],
      },
      &quot;doubleValue&quot;: 3.14, # Double Number.
      &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
        &quot;intValues&quot;: [ # Integer array.
          &quot;A String&quot;,
        ],
      },
      &quot;intValue&quot;: &quot;A String&quot;, # Integer.
      &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
      &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
        &quot;stringValues&quot;: [ # String array.
          &quot;A String&quot;,
        ],
      },
      &quot;stringValue&quot;: &quot;A String&quot;, # String.
    },
  },
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # The response for executing a functional test.
  &quot;assertionResults&quot;: [ # Results of each assertions ran during execution of test case.
    { # The result of an assertion.
      &quot;assertion&quot;: { # An assertion which will check for a condition over task execution status or an expression for task output variables # Assertion that was run.
        &quot;assertionStrategy&quot;: &quot;A String&quot;, # Optional. The type of assertion to perform.
        &quot;condition&quot;: &quot;A String&quot;, # Optional. Standard filter expression for ASSERT_CONDITION to succeed
        &quot;parameter&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4 # Optional. Key-value pair for ASSERT_EQUALS, ASSERT_NOT_EQUALS, ASSERT_CONTAINS to succeed
          &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
          &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
          &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
            &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
              &quot;booleanValues&quot;: [ # Boolean array.
                True or False,
              ],
            },
            &quot;booleanValue&quot;: True or False, # Boolean.
            &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
              &quot;doubleValues&quot;: [ # Double number array.
                3.14,
              ],
            },
            &quot;doubleValue&quot;: 3.14, # Double Number.
            &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
              &quot;intValues&quot;: [ # Integer array.
                &quot;A String&quot;,
              ],
            },
            &quot;intValue&quot;: &quot;A String&quot;, # Integer.
            &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
            &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
              &quot;stringValues&quot;: [ # String array.
                &quot;A String&quot;,
              ],
            },
            &quot;stringValue&quot;: &quot;A String&quot;, # String.
          },
        },
        &quot;retryCount&quot;: 42, # Number of times given task should be retried in case of ASSERT_FAILED_EXECUTION
      },
      &quot;failureMessage&quot;: &quot;A String&quot;, # Details of the assertion failure
      &quot;status&quot;: &quot;A String&quot;, # Status of assertion to signify if the assertion succeeded or failed
      &quot;taskName&quot;: &quot;A String&quot;, # Task name of task where the assertion was run.
      &quot;taskNumber&quot;: &quot;A String&quot;, # Task number of task where the assertion was run.
    },
  ],
  &quot;executionId&quot;: &quot;A String&quot;, # The id of the execution corresponding to this run of integration.
  &quot;outputParameters&quot;: { # OUTPUT parameters in format of Map. Where Key is the name of the parameter. Note: Name of the system generated parameters are wrapped by backtick(`) to distinguish them from the user defined parameters.
    &quot;a_key&quot;: &quot;&quot;, # Properties of the object.
  },
  &quot;testExecutionState&quot;: &quot;A String&quot;, # State of the test case execution
}</pre>
</div>

<div class="method">
    <code class="details" id="get">get(name, x__xgafv=None)</code>
  <pre>Get a test case

Args:
  name: string, Required. The ID of the test case to retrieve (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Defines the functional test case for Application Integration. Next available id: 15
  &quot;createTime&quot;: &quot;A String&quot;, # Auto-generated.
  &quot;creatorEmail&quot;: &quot;A String&quot;, # Optional. The creator&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;databasePersistencePolicy&quot;: &quot;A String&quot;, # Optional. Various policies for how to persist the test execution info including execution info, execution export info, execution metadata index and execution param index..
  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the test case.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of test case.
  &quot;lastModifierEmail&quot;: &quot;A String&quot;, # The last modifier&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;lockHolderEmail&quot;: &quot;A String&quot;, # Optional. The edit lock holder&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;name&quot;: &quot;A String&quot;, # Output only. Auto-generated primary key.
  &quot;testInputParameters&quot;: [ # Optional. Parameters that are expected to be passed to the test case when the test case is triggered. This gives the user the ability to provide default values. This should include all the output variables of the trigger as input variables.
    { # Integration Parameter is defined in the integration config and are used to provide information about data types of the expected parameters and provide any default values if needed. They can also be used to add custom attributes. These are static in nature and should not be used for dynamic event definition.
      &quot;containsLargeData&quot;: True or False, # Indicates whether this variable contains large data and need to be uploaded to Cloud Storage.
      &quot;dataType&quot;: &quot;A String&quot;, # Type of the parameter.
      &quot;defaultValue&quot;: { # The type of the parameter. # Default values for the defined keys. Each value can either be string, int, double or any proto message or a serialized object.
        &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
          &quot;booleanValues&quot;: [ # Boolean array.
            True or False,
          ],
        },
        &quot;booleanValue&quot;: True or False, # Boolean.
        &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
          &quot;doubleValues&quot;: [ # Double number array.
            3.14,
          ],
        },
        &quot;doubleValue&quot;: 3.14, # Double Number.
        &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
          &quot;intValues&quot;: [ # Integer array.
            &quot;A String&quot;,
          ],
        },
        &quot;intValue&quot;: &quot;A String&quot;, # Integer.
        &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
        &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
          &quot;stringValues&quot;: [ # String array.
            &quot;A String&quot;,
          ],
        },
        &quot;stringValue&quot;: &quot;A String&quot;, # String.
      },
      &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the parameter.
      &quot;displayName&quot;: &quot;A String&quot;, # The name (without prefix) to be displayed in the UI for this parameter. E.g. if the key is &quot;foo.bar.myName&quot;, then the name would be &quot;myName&quot;.
      &quot;inputOutputType&quot;: &quot;A String&quot;, # Specifies the input/output type for the parameter.
      &quot;isTransient&quot;: True or False, # Whether this parameter is a transient parameter.
      &quot;jsonSchema&quot;: &quot;A String&quot;, # This schema will be used to validate runtime JSON-typed values of this parameter.
      &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
      &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
      &quot;producer&quot;: &quot;A String&quot;, # The identifier of the node (TaskConfig/TriggerConfig) this parameter was produced by, if it is a transient param or a copy of an input param.
      &quot;searchable&quot;: True or False, # Searchable in the execution log or not.
    },
  ],
  &quot;testTaskConfigs&quot;: [ # Optional. However, the test case doesn&#x27;t mock or assert anything without test_task_configs.
    { # The task mock configuration details and assertions for functional tests. Next available id: 6
      &quot;assertions&quot;: [ # Optional. List of conditions or expressions which should be evaluated to true unless there is a bug/problem in the integration. These are evaluated one the task execution is completed as per the mock strategy in test case
        { # An assertion which will check for a condition over task execution status or an expression for task output variables
          &quot;assertionStrategy&quot;: &quot;A String&quot;, # Optional. The type of assertion to perform.
          &quot;condition&quot;: &quot;A String&quot;, # Optional. Standard filter expression for ASSERT_CONDITION to succeed
          &quot;parameter&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4 # Optional. Key-value pair for ASSERT_EQUALS, ASSERT_NOT_EQUALS, ASSERT_CONTAINS to succeed
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
          &quot;retryCount&quot;: 42, # Number of times given task should be retried in case of ASSERT_FAILED_EXECUTION
        },
      ],
      &quot;mockConfig&quot;: { # The configuration for mocking of a task during test execution Next available id: 4 # Optional. Defines how to mock the given task during test execution
        &quot;failedExecutions&quot;: &quot;A String&quot;, # Optional. Number of times the given task should fail for failure mock strategy
        &quot;mockStrategy&quot;: &quot;A String&quot;, # Mockstrategy defines how the particular task should be mocked during test execution
        &quot;parameters&quot;: [ # Optional. List of key-value pairs for specific mock strategy
          { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
        ],
      },
      &quot;task&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task name in integration which will be mocked by this test task config
      &quot;taskConfig&quot;: { # The task configuration details. This is not the implementation of Task. There might be multiple TaskConfigs for the same Task. # Optional. Auto-generated.
        &quot;conditionalFailurePolicies&quot;: { # Conditional task failur retry strategies # Optional. The list of conditional failure policies that will be applied to the task in order.
          &quot;defaultFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # The default failure policy to be applied if no conditional failure policy matches.
            &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
            &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
            &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
            &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
          },
          &quot;failurePolicies&quot;: [ # The list of failure policies that will be applied to the task in order.
            { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied).
              &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
              &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
              &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
              &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
            },
          ],
        },
        &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
        &quot;displayName&quot;: &quot;A String&quot;, # Optional. User-provided label that is attached to this TaskConfig in the UI.
        &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
        &quot;externalTaskType&quot;: &quot;A String&quot;, # Optional. External task type of the task
        &quot;failurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for asynchronous calls to Eventbus alone (Post To Queue, Schedule etc.).
          &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
          &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
          &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
          &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
        },
        &quot;jsonValidationOption&quot;: &quot;A String&quot;, # Optional. If set, overrides the option configured in the Task implementation class.
        &quot;nextTasks&quot;: [ # Optional. The set of tasks that are next in line to be executed as per the execution graph defined for the parent event, specified by `event_config_id`. Each of these next tasks are executed only if the condition associated with them evaluates to true.
          { # The task that is next in line to be executed, if the condition specified evaluated to true.
            &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
            &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
            &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
            &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
            &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
          },
        ],
        &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution of the next set of tasks for the current task.
        &quot;parameters&quot;: { # Optional. The customized parameters the user can pass to this task.
          &quot;a_key&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
        },
        &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
          &quot;x&quot;: 42, # Required. X axis of the coordinate
          &quot;y&quot;: 42, # Required. Y axis of the coordinate
        },
        &quot;successPolicy&quot;: { # Policy that dictates the behavior for the task after it completes successfully. # Optional. Determines what action to take upon successful task completion.
          &quot;finalState&quot;: &quot;A String&quot;, # State to which the execution snapshot status will be set if the task succeeds.
        },
        &quot;synchronousCallFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for synchronous calls to Eventbus alone (Post).
          &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
          &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
          &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
          &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
        },
        &quot;task&quot;: &quot;A String&quot;, # Optional. The name for the task.
        &quot;taskExecutionStrategy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution strategy of this task.
        &quot;taskId&quot;: &quot;A String&quot;, # Required. The identifier of this task within its parent event config, specified by the client. This should be unique among all the tasks belong to the same event config. We use this field as the identifier to find next tasks (via field `next_tasks.task_id`).
        &quot;taskTemplate&quot;: &quot;A String&quot;, # Optional. Used to define task-template name if task is of type task-template
      },
      &quot;taskNumber&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task in integration which will be mocked by this test task config
    },
  ],
  &quot;triggerConfig&quot;: { # Configuration detail of a trigger. # Optional. Auto-generated.
    &quot;alertConfig&quot;: [ # Optional. An alert threshold configuration for the [trigger + client + integration] tuple. If these values are not specified in the trigger config, default values will be populated by the system. Note that there must be exactly one alert threshold configured per [client + trigger + integration] when published.
      { # Message to be used to configure custom alerting in the {@code EventConfig} protos for an event.
        &quot;aggregationPeriod&quot;: &quot;A String&quot;, # The period over which the metric value should be aggregated and evaluated. Format is , where integer should be a positive integer and unit should be one of (s,m,h,d,w) meaning (second, minute, hour, day, week). For an EXPECTED_MIN threshold, this aggregation_period must be lesser than 24 hours.
        &quot;alertThreshold&quot;: 42, # For how many contiguous aggregation periods should the expected min or max be violated for the alert to be fired.
        &quot;disableAlert&quot;: True or False, # Set to false by default. When set to true, the metrics are not aggregated or pushed to Monarch for this integration alert.
        &quot;displayName&quot;: &quot;A String&quot;, # Name of the alert. This will be displayed in the alert subject. If set, this name should be unique within the scope of the integration.
        &quot;durationThreshold&quot;: &quot;A String&quot;, # Should be specified only for *AVERAGE_DURATION and *PERCENTILE_DURATION metrics. This member should be used to specify what duration value the metrics should exceed for the alert to trigger.
        &quot;metricType&quot;: &quot;A String&quot;, # The type of metric.
        &quot;onlyFinalAttempt&quot;: True or False, # For either events or tasks, depending on the type of alert, count only final attempts, not retries.
        &quot;thresholdType&quot;: &quot;A String&quot;, # The threshold type, whether lower(expected_min) or upper(expected_max), for which this alert is being configured. If value falls below expected_min or exceeds expected_max, an alert will be fired.
        &quot;thresholdValue&quot;: { # The threshold value of the metric, above or below which the alert should be triggered. See EventAlertConfig or TaskAlertConfig for the different alert metric types in each case. For the *RATE metrics, one or both of these fields may be set. Zero is the default value and can be left at that. For *PERCENTILE_DURATION metrics, one or both of these fields may be set, and also, the duration threshold value should be specified in the threshold_duration_ms member below. For *AVERAGE_DURATION metrics, these fields should not be set at all. A different member, threshold_duration_ms, must be set in the EventAlertConfig or the TaskAlertConfig. # The metric value, above or below which the alert should be triggered.
          &quot;absolute&quot;: &quot;A String&quot;, # Absolute value threshold.
          &quot;percentage&quot;: 42, # Percentage threshold.
        },
      },
    ],
    &quot;cloudSchedulerConfig&quot;: { # Cloud Scheduler Trigger configuration # Optional. Cloud Scheduler Trigger related metadata
      &quot;cronTab&quot;: &quot;A String&quot;, # Required. The cron tab of cloud scheduler trigger.
      &quot;errorMessage&quot;: &quot;A String&quot;, # Optional. When the job was deleted from Pantheon UI, error_message will be populated when Get/List integrations
      &quot;location&quot;: &quot;A String&quot;, # Required. The location where associated cloud scheduler job will be created
      &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # Required. Service account used by Cloud Scheduler to trigger the integration at scheduled time
    },
    &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
    &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
    &quot;inputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of input variables for the api trigger.
      &quot;names&quot;: [ # Optional. List of variable names.
        &quot;A String&quot;,
      ],
    },
    &quot;label&quot;: &quot;A String&quot;, # Optional. The user created label for a particular trigger.
    &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. Dictates how next tasks will be executed.
    &quot;outputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of output variables for the api trigger.
      &quot;names&quot;: [ # Optional. List of variable names.
        &quot;A String&quot;,
      ],
    },
    &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
      &quot;x&quot;: 42, # Required. X axis of the coordinate
      &quot;y&quot;: 42, # Required. Y axis of the coordinate
    },
    &quot;properties&quot;: { # Optional. Configurable properties of the trigger, not to be confused with integration parameters. E.g. &quot;name&quot; is a property for API triggers and &quot;subscription&quot; is a property for Pub/sub triggers.
      &quot;a_key&quot;: &quot;A String&quot;,
    },
    &quot;startTasks&quot;: [ # Optional. Set of tasks numbers from where the integration execution is started by this trigger. If this is empty, then integration is executed with default start tasks. In the list of start tasks, none of two tasks can have direct ancestor-descendant relationships (i.e. in a same integration execution graph).
      { # The task that is next in line to be executed, if the condition specified evaluated to true.
        &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
        &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
        &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
        &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
        &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
      },
    ],
    &quot;trigger&quot;: &quot;A String&quot;, # Optional. Name of the trigger. Example: &quot;API Trigger&quot;, &quot;Cloud Pub Sub Trigger&quot; When set will be sent out to monitoring dashabord for tracking purpose.
    &quot;triggerId&quot;: &quot;A String&quot;, # Optional. Auto-generated trigger ID. The ID is based on the properties that you define in the trigger config. For example, for an API trigger, the trigger ID follows the format: api_trigger/TRIGGER_NAME Where trigger config has properties with value {&quot;Trigger name&quot;: TRIGGER_NAME}
    &quot;triggerNumber&quot;: &quot;A String&quot;, # Required. A number to uniquely identify each trigger config within the integration on UI.
    &quot;triggerType&quot;: &quot;A String&quot;, # Optional. Type of trigger
  },
  &quot;triggerId&quot;: &quot;A String&quot;, # Required. This defines the trigger ID in workflow which is considered to be executed as starting point of the test case
  &quot;updateTime&quot;: &quot;A String&quot;, # Auto-generated.
}</pre>
</div>

<div class="method">
    <code class="details" id="list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, readMask=None, x__xgafv=None)</code>
  <pre>Lists all the test cases that satisfy the filters.

Args:
  parent: string, Required. The parent resource where this TestCase was created. (required)
  filter: string, Optional. Standard filter field. Filtering as supported in https://developers.google.com/authorized-buyers/apis/guides/list-filters.
  orderBy: string, Optional. The results would be returned in order specified here. Currently supported sort keys are: Descending sort order for &quot;last_modified_time&quot;, &quot;created_time&quot;. Ascending sort order for &quot;name&quot;.
  pageSize: integer, Optional. The maximum number of test cases to return. The service may return fewer than this value. If unspecified, at most 100 test cases will be returned.
  pageToken: string, Optional. A page token, received from a previous `ListTestCases` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListTestCases` must match the call that provided the page token.
  readMask: string, Optional. The mask which specifies fields that need to be returned in the TestCases&#x27;s response.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response for ListTestCases
  &quot;nextPageToken&quot;: &quot;A String&quot;, # A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
  &quot;testCases&quot;: [ # The test cases corresponding to the specified filter
    { # Defines the functional test case for Application Integration. Next available id: 15
      &quot;createTime&quot;: &quot;A String&quot;, # Auto-generated.
      &quot;creatorEmail&quot;: &quot;A String&quot;, # Optional. The creator&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
      &quot;databasePersistencePolicy&quot;: &quot;A String&quot;, # Optional. Various policies for how to persist the test execution info including execution info, execution export info, execution metadata index and execution param index..
      &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the test case.
      &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of test case.
      &quot;lastModifierEmail&quot;: &quot;A String&quot;, # The last modifier&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
      &quot;lockHolderEmail&quot;: &quot;A String&quot;, # Optional. The edit lock holder&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
      &quot;name&quot;: &quot;A String&quot;, # Output only. Auto-generated primary key.
      &quot;testInputParameters&quot;: [ # Optional. Parameters that are expected to be passed to the test case when the test case is triggered. This gives the user the ability to provide default values. This should include all the output variables of the trigger as input variables.
        { # Integration Parameter is defined in the integration config and are used to provide information about data types of the expected parameters and provide any default values if needed. They can also be used to add custom attributes. These are static in nature and should not be used for dynamic event definition.
          &quot;containsLargeData&quot;: True or False, # Indicates whether this variable contains large data and need to be uploaded to Cloud Storage.
          &quot;dataType&quot;: &quot;A String&quot;, # Type of the parameter.
          &quot;defaultValue&quot;: { # The type of the parameter. # Default values for the defined keys. Each value can either be string, int, double or any proto message or a serialized object.
            &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
              &quot;booleanValues&quot;: [ # Boolean array.
                True or False,
              ],
            },
            &quot;booleanValue&quot;: True or False, # Boolean.
            &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
              &quot;doubleValues&quot;: [ # Double number array.
                3.14,
              ],
            },
            &quot;doubleValue&quot;: 3.14, # Double Number.
            &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
              &quot;intValues&quot;: [ # Integer array.
                &quot;A String&quot;,
              ],
            },
            &quot;intValue&quot;: &quot;A String&quot;, # Integer.
            &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
            &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
              &quot;stringValues&quot;: [ # String array.
                &quot;A String&quot;,
              ],
            },
            &quot;stringValue&quot;: &quot;A String&quot;, # String.
          },
          &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the parameter.
          &quot;displayName&quot;: &quot;A String&quot;, # The name (without prefix) to be displayed in the UI for this parameter. E.g. if the key is &quot;foo.bar.myName&quot;, then the name would be &quot;myName&quot;.
          &quot;inputOutputType&quot;: &quot;A String&quot;, # Specifies the input/output type for the parameter.
          &quot;isTransient&quot;: True or False, # Whether this parameter is a transient parameter.
          &quot;jsonSchema&quot;: &quot;A String&quot;, # This schema will be used to validate runtime JSON-typed values of this parameter.
          &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
          &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
          &quot;producer&quot;: &quot;A String&quot;, # The identifier of the node (TaskConfig/TriggerConfig) this parameter was produced by, if it is a transient param or a copy of an input param.
          &quot;searchable&quot;: True or False, # Searchable in the execution log or not.
        },
      ],
      &quot;testTaskConfigs&quot;: [ # Optional. However, the test case doesn&#x27;t mock or assert anything without test_task_configs.
        { # The task mock configuration details and assertions for functional tests. Next available id: 6
          &quot;assertions&quot;: [ # Optional. List of conditions or expressions which should be evaluated to true unless there is a bug/problem in the integration. These are evaluated one the task execution is completed as per the mock strategy in test case
            { # An assertion which will check for a condition over task execution status or an expression for task output variables
              &quot;assertionStrategy&quot;: &quot;A String&quot;, # Optional. The type of assertion to perform.
              &quot;condition&quot;: &quot;A String&quot;, # Optional. Standard filter expression for ASSERT_CONDITION to succeed
              &quot;parameter&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4 # Optional. Key-value pair for ASSERT_EQUALS, ASSERT_NOT_EQUALS, ASSERT_CONTAINS to succeed
                &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
                &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
                &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
                  &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                    &quot;booleanValues&quot;: [ # Boolean array.
                      True or False,
                    ],
                  },
                  &quot;booleanValue&quot;: True or False, # Boolean.
                  &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                    &quot;doubleValues&quot;: [ # Double number array.
                      3.14,
                    ],
                  },
                  &quot;doubleValue&quot;: 3.14, # Double Number.
                  &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                    &quot;intValues&quot;: [ # Integer array.
                      &quot;A String&quot;,
                    ],
                  },
                  &quot;intValue&quot;: &quot;A String&quot;, # Integer.
                  &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
                  &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                    &quot;stringValues&quot;: [ # String array.
                      &quot;A String&quot;,
                    ],
                  },
                  &quot;stringValue&quot;: &quot;A String&quot;, # String.
                },
              },
              &quot;retryCount&quot;: 42, # Number of times given task should be retried in case of ASSERT_FAILED_EXECUTION
            },
          ],
          &quot;mockConfig&quot;: { # The configuration for mocking of a task during test execution Next available id: 4 # Optional. Defines how to mock the given task during test execution
            &quot;failedExecutions&quot;: &quot;A String&quot;, # Optional. Number of times the given task should fail for failure mock strategy
            &quot;mockStrategy&quot;: &quot;A String&quot;, # Mockstrategy defines how the particular task should be mocked during test execution
            &quot;parameters&quot;: [ # Optional. List of key-value pairs for specific mock strategy
              { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
                &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
                &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
                &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
                  &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                    &quot;booleanValues&quot;: [ # Boolean array.
                      True or False,
                    ],
                  },
                  &quot;booleanValue&quot;: True or False, # Boolean.
                  &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                    &quot;doubleValues&quot;: [ # Double number array.
                      3.14,
                    ],
                  },
                  &quot;doubleValue&quot;: 3.14, # Double Number.
                  &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                    &quot;intValues&quot;: [ # Integer array.
                      &quot;A String&quot;,
                    ],
                  },
                  &quot;intValue&quot;: &quot;A String&quot;, # Integer.
                  &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
                  &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                    &quot;stringValues&quot;: [ # String array.
                      &quot;A String&quot;,
                    ],
                  },
                  &quot;stringValue&quot;: &quot;A String&quot;, # String.
                },
              },
            ],
          },
          &quot;task&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task name in integration which will be mocked by this test task config
          &quot;taskConfig&quot;: { # The task configuration details. This is not the implementation of Task. There might be multiple TaskConfigs for the same Task. # Optional. Auto-generated.
            &quot;conditionalFailurePolicies&quot;: { # Conditional task failur retry strategies # Optional. The list of conditional failure policies that will be applied to the task in order.
              &quot;defaultFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # The default failure policy to be applied if no conditional failure policy matches.
                &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
                &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
                &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
                &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
              },
              &quot;failurePolicies&quot;: [ # The list of failure policies that will be applied to the task in order.
                { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied).
                  &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
                  &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
                  &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
                  &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
                },
              ],
            },
            &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
            &quot;displayName&quot;: &quot;A String&quot;, # Optional. User-provided label that is attached to this TaskConfig in the UI.
            &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
            &quot;externalTaskType&quot;: &quot;A String&quot;, # Optional. External task type of the task
            &quot;failurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for asynchronous calls to Eventbus alone (Post To Queue, Schedule etc.).
              &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
              &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
              &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
              &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
            },
            &quot;jsonValidationOption&quot;: &quot;A String&quot;, # Optional. If set, overrides the option configured in the Task implementation class.
            &quot;nextTasks&quot;: [ # Optional. The set of tasks that are next in line to be executed as per the execution graph defined for the parent event, specified by `event_config_id`. Each of these next tasks are executed only if the condition associated with them evaluates to true.
              { # The task that is next in line to be executed, if the condition specified evaluated to true.
                &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
                &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
                &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
                &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
                &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
              },
            ],
            &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution of the next set of tasks for the current task.
            &quot;parameters&quot;: { # Optional. The customized parameters the user can pass to this task.
              &quot;a_key&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
                &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
                &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
                &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
                  &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                    &quot;booleanValues&quot;: [ # Boolean array.
                      True or False,
                    ],
                  },
                  &quot;booleanValue&quot;: True or False, # Boolean.
                  &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                    &quot;doubleValues&quot;: [ # Double number array.
                      3.14,
                    ],
                  },
                  &quot;doubleValue&quot;: 3.14, # Double Number.
                  &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                    &quot;intValues&quot;: [ # Integer array.
                      &quot;A String&quot;,
                    ],
                  },
                  &quot;intValue&quot;: &quot;A String&quot;, # Integer.
                  &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
                  &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                    &quot;stringValues&quot;: [ # String array.
                      &quot;A String&quot;,
                    ],
                  },
                  &quot;stringValue&quot;: &quot;A String&quot;, # String.
                },
              },
            },
            &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
              &quot;x&quot;: 42, # Required. X axis of the coordinate
              &quot;y&quot;: 42, # Required. Y axis of the coordinate
            },
            &quot;successPolicy&quot;: { # Policy that dictates the behavior for the task after it completes successfully. # Optional. Determines what action to take upon successful task completion.
              &quot;finalState&quot;: &quot;A String&quot;, # State to which the execution snapshot status will be set if the task succeeds.
            },
            &quot;synchronousCallFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for synchronous calls to Eventbus alone (Post).
              &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
              &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
              &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
              &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
            },
            &quot;task&quot;: &quot;A String&quot;, # Optional. The name for the task.
            &quot;taskExecutionStrategy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution strategy of this task.
            &quot;taskId&quot;: &quot;A String&quot;, # Required. The identifier of this task within its parent event config, specified by the client. This should be unique among all the tasks belong to the same event config. We use this field as the identifier to find next tasks (via field `next_tasks.task_id`).
            &quot;taskTemplate&quot;: &quot;A String&quot;, # Optional. Used to define task-template name if task is of type task-template
          },
          &quot;taskNumber&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task in integration which will be mocked by this test task config
        },
      ],
      &quot;triggerConfig&quot;: { # Configuration detail of a trigger. # Optional. Auto-generated.
        &quot;alertConfig&quot;: [ # Optional. An alert threshold configuration for the [trigger + client + integration] tuple. If these values are not specified in the trigger config, default values will be populated by the system. Note that there must be exactly one alert threshold configured per [client + trigger + integration] when published.
          { # Message to be used to configure custom alerting in the {@code EventConfig} protos for an event.
            &quot;aggregationPeriod&quot;: &quot;A String&quot;, # The period over which the metric value should be aggregated and evaluated. Format is , where integer should be a positive integer and unit should be one of (s,m,h,d,w) meaning (second, minute, hour, day, week). For an EXPECTED_MIN threshold, this aggregation_period must be lesser than 24 hours.
            &quot;alertThreshold&quot;: 42, # For how many contiguous aggregation periods should the expected min or max be violated for the alert to be fired.
            &quot;disableAlert&quot;: True or False, # Set to false by default. When set to true, the metrics are not aggregated or pushed to Monarch for this integration alert.
            &quot;displayName&quot;: &quot;A String&quot;, # Name of the alert. This will be displayed in the alert subject. If set, this name should be unique within the scope of the integration.
            &quot;durationThreshold&quot;: &quot;A String&quot;, # Should be specified only for *AVERAGE_DURATION and *PERCENTILE_DURATION metrics. This member should be used to specify what duration value the metrics should exceed for the alert to trigger.
            &quot;metricType&quot;: &quot;A String&quot;, # The type of metric.
            &quot;onlyFinalAttempt&quot;: True or False, # For either events or tasks, depending on the type of alert, count only final attempts, not retries.
            &quot;thresholdType&quot;: &quot;A String&quot;, # The threshold type, whether lower(expected_min) or upper(expected_max), for which this alert is being configured. If value falls below expected_min or exceeds expected_max, an alert will be fired.
            &quot;thresholdValue&quot;: { # The threshold value of the metric, above or below which the alert should be triggered. See EventAlertConfig or TaskAlertConfig for the different alert metric types in each case. For the *RATE metrics, one or both of these fields may be set. Zero is the default value and can be left at that. For *PERCENTILE_DURATION metrics, one or both of these fields may be set, and also, the duration threshold value should be specified in the threshold_duration_ms member below. For *AVERAGE_DURATION metrics, these fields should not be set at all. A different member, threshold_duration_ms, must be set in the EventAlertConfig or the TaskAlertConfig. # The metric value, above or below which the alert should be triggered.
              &quot;absolute&quot;: &quot;A String&quot;, # Absolute value threshold.
              &quot;percentage&quot;: 42, # Percentage threshold.
            },
          },
        ],
        &quot;cloudSchedulerConfig&quot;: { # Cloud Scheduler Trigger configuration # Optional. Cloud Scheduler Trigger related metadata
          &quot;cronTab&quot;: &quot;A String&quot;, # Required. The cron tab of cloud scheduler trigger.
          &quot;errorMessage&quot;: &quot;A String&quot;, # Optional. When the job was deleted from Pantheon UI, error_message will be populated when Get/List integrations
          &quot;location&quot;: &quot;A String&quot;, # Required. The location where associated cloud scheduler job will be created
          &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # Required. Service account used by Cloud Scheduler to trigger the integration at scheduled time
        },
        &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
        &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
        &quot;inputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of input variables for the api trigger.
          &quot;names&quot;: [ # Optional. List of variable names.
            &quot;A String&quot;,
          ],
        },
        &quot;label&quot;: &quot;A String&quot;, # Optional. The user created label for a particular trigger.
        &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. Dictates how next tasks will be executed.
        &quot;outputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of output variables for the api trigger.
          &quot;names&quot;: [ # Optional. List of variable names.
            &quot;A String&quot;,
          ],
        },
        &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
          &quot;x&quot;: 42, # Required. X axis of the coordinate
          &quot;y&quot;: 42, # Required. Y axis of the coordinate
        },
        &quot;properties&quot;: { # Optional. Configurable properties of the trigger, not to be confused with integration parameters. E.g. &quot;name&quot; is a property for API triggers and &quot;subscription&quot; is a property for Pub/sub triggers.
          &quot;a_key&quot;: &quot;A String&quot;,
        },
        &quot;startTasks&quot;: [ # Optional. Set of tasks numbers from where the integration execution is started by this trigger. If this is empty, then integration is executed with default start tasks. In the list of start tasks, none of two tasks can have direct ancestor-descendant relationships (i.e. in a same integration execution graph).
          { # The task that is next in line to be executed, if the condition specified evaluated to true.
            &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
            &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
            &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
            &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
            &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
          },
        ],
        &quot;trigger&quot;: &quot;A String&quot;, # Optional. Name of the trigger. Example: &quot;API Trigger&quot;, &quot;Cloud Pub Sub Trigger&quot; When set will be sent out to monitoring dashabord for tracking purpose.
        &quot;triggerId&quot;: &quot;A String&quot;, # Optional. Auto-generated trigger ID. The ID is based on the properties that you define in the trigger config. For example, for an API trigger, the trigger ID follows the format: api_trigger/TRIGGER_NAME Where trigger config has properties with value {&quot;Trigger name&quot;: TRIGGER_NAME}
        &quot;triggerNumber&quot;: &quot;A String&quot;, # Required. A number to uniquely identify each trigger config within the integration on UI.
        &quot;triggerType&quot;: &quot;A String&quot;, # Optional. Type of trigger
      },
      &quot;triggerId&quot;: &quot;A String&quot;, # Required. This defines the trigger ID in workflow which is considered to be executed as starting point of the test case
      &quot;updateTime&quot;: &quot;A String&quot;, # Auto-generated.
    },
  ],
}</pre>
</div>

<div class="method">
    <code class="details" id="list_next">list_next()</code>
  <pre>Retrieves the next page of results.

        Args:
          previous_request: The request for the previous page. (required)
          previous_response: The response from the request for the previous page. (required)

        Returns:
          A request object that you can call &#x27;execute()&#x27; on to request the next
          page. Returns None if there are no more items in the collection.
        </pre>
</div>

<div class="method">
    <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
  <pre>Updates a test case

Args:
  name: string, Output only. Auto-generated primary key. (required)
  body: object, The request body.
    The object takes the form of:

{ # Defines the functional test case for Application Integration. Next available id: 15
  &quot;createTime&quot;: &quot;A String&quot;, # Auto-generated.
  &quot;creatorEmail&quot;: &quot;A String&quot;, # Optional. The creator&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;databasePersistencePolicy&quot;: &quot;A String&quot;, # Optional. Various policies for how to persist the test execution info including execution info, execution export info, execution metadata index and execution param index..
  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the test case.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of test case.
  &quot;lastModifierEmail&quot;: &quot;A String&quot;, # The last modifier&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;lockHolderEmail&quot;: &quot;A String&quot;, # Optional. The edit lock holder&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;name&quot;: &quot;A String&quot;, # Output only. Auto-generated primary key.
  &quot;testInputParameters&quot;: [ # Optional. Parameters that are expected to be passed to the test case when the test case is triggered. This gives the user the ability to provide default values. This should include all the output variables of the trigger as input variables.
    { # Integration Parameter is defined in the integration config and are used to provide information about data types of the expected parameters and provide any default values if needed. They can also be used to add custom attributes. These are static in nature and should not be used for dynamic event definition.
      &quot;containsLargeData&quot;: True or False, # Indicates whether this variable contains large data and need to be uploaded to Cloud Storage.
      &quot;dataType&quot;: &quot;A String&quot;, # Type of the parameter.
      &quot;defaultValue&quot;: { # The type of the parameter. # Default values for the defined keys. Each value can either be string, int, double or any proto message or a serialized object.
        &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
          &quot;booleanValues&quot;: [ # Boolean array.
            True or False,
          ],
        },
        &quot;booleanValue&quot;: True or False, # Boolean.
        &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
          &quot;doubleValues&quot;: [ # Double number array.
            3.14,
          ],
        },
        &quot;doubleValue&quot;: 3.14, # Double Number.
        &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
          &quot;intValues&quot;: [ # Integer array.
            &quot;A String&quot;,
          ],
        },
        &quot;intValue&quot;: &quot;A String&quot;, # Integer.
        &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
        &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
          &quot;stringValues&quot;: [ # String array.
            &quot;A String&quot;,
          ],
        },
        &quot;stringValue&quot;: &quot;A String&quot;, # String.
      },
      &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the parameter.
      &quot;displayName&quot;: &quot;A String&quot;, # The name (without prefix) to be displayed in the UI for this parameter. E.g. if the key is &quot;foo.bar.myName&quot;, then the name would be &quot;myName&quot;.
      &quot;inputOutputType&quot;: &quot;A String&quot;, # Specifies the input/output type for the parameter.
      &quot;isTransient&quot;: True or False, # Whether this parameter is a transient parameter.
      &quot;jsonSchema&quot;: &quot;A String&quot;, # This schema will be used to validate runtime JSON-typed values of this parameter.
      &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
      &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
      &quot;producer&quot;: &quot;A String&quot;, # The identifier of the node (TaskConfig/TriggerConfig) this parameter was produced by, if it is a transient param or a copy of an input param.
      &quot;searchable&quot;: True or False, # Searchable in the execution log or not.
    },
  ],
  &quot;testTaskConfigs&quot;: [ # Optional. However, the test case doesn&#x27;t mock or assert anything without test_task_configs.
    { # The task mock configuration details and assertions for functional tests. Next available id: 6
      &quot;assertions&quot;: [ # Optional. List of conditions or expressions which should be evaluated to true unless there is a bug/problem in the integration. These are evaluated one the task execution is completed as per the mock strategy in test case
        { # An assertion which will check for a condition over task execution status or an expression for task output variables
          &quot;assertionStrategy&quot;: &quot;A String&quot;, # Optional. The type of assertion to perform.
          &quot;condition&quot;: &quot;A String&quot;, # Optional. Standard filter expression for ASSERT_CONDITION to succeed
          &quot;parameter&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4 # Optional. Key-value pair for ASSERT_EQUALS, ASSERT_NOT_EQUALS, ASSERT_CONTAINS to succeed
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
          &quot;retryCount&quot;: 42, # Number of times given task should be retried in case of ASSERT_FAILED_EXECUTION
        },
      ],
      &quot;mockConfig&quot;: { # The configuration for mocking of a task during test execution Next available id: 4 # Optional. Defines how to mock the given task during test execution
        &quot;failedExecutions&quot;: &quot;A String&quot;, # Optional. Number of times the given task should fail for failure mock strategy
        &quot;mockStrategy&quot;: &quot;A String&quot;, # Mockstrategy defines how the particular task should be mocked during test execution
        &quot;parameters&quot;: [ # Optional. List of key-value pairs for specific mock strategy
          { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
        ],
      },
      &quot;task&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task name in integration which will be mocked by this test task config
      &quot;taskConfig&quot;: { # The task configuration details. This is not the implementation of Task. There might be multiple TaskConfigs for the same Task. # Optional. Auto-generated.
        &quot;conditionalFailurePolicies&quot;: { # Conditional task failur retry strategies # Optional. The list of conditional failure policies that will be applied to the task in order.
          &quot;defaultFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # The default failure policy to be applied if no conditional failure policy matches.
            &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
            &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
            &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
            &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
          },
          &quot;failurePolicies&quot;: [ # The list of failure policies that will be applied to the task in order.
            { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied).
              &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
              &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
              &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
              &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
            },
          ],
        },
        &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
        &quot;displayName&quot;: &quot;A String&quot;, # Optional. User-provided label that is attached to this TaskConfig in the UI.
        &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
        &quot;externalTaskType&quot;: &quot;A String&quot;, # Optional. External task type of the task
        &quot;failurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for asynchronous calls to Eventbus alone (Post To Queue, Schedule etc.).
          &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
          &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
          &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
          &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
        },
        &quot;jsonValidationOption&quot;: &quot;A String&quot;, # Optional. If set, overrides the option configured in the Task implementation class.
        &quot;nextTasks&quot;: [ # Optional. The set of tasks that are next in line to be executed as per the execution graph defined for the parent event, specified by `event_config_id`. Each of these next tasks are executed only if the condition associated with them evaluates to true.
          { # The task that is next in line to be executed, if the condition specified evaluated to true.
            &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
            &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
            &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
            &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
            &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
          },
        ],
        &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution of the next set of tasks for the current task.
        &quot;parameters&quot;: { # Optional. The customized parameters the user can pass to this task.
          &quot;a_key&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
        },
        &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
          &quot;x&quot;: 42, # Required. X axis of the coordinate
          &quot;y&quot;: 42, # Required. Y axis of the coordinate
        },
        &quot;successPolicy&quot;: { # Policy that dictates the behavior for the task after it completes successfully. # Optional. Determines what action to take upon successful task completion.
          &quot;finalState&quot;: &quot;A String&quot;, # State to which the execution snapshot status will be set if the task succeeds.
        },
        &quot;synchronousCallFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for synchronous calls to Eventbus alone (Post).
          &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
          &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
          &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
          &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
        },
        &quot;task&quot;: &quot;A String&quot;, # Optional. The name for the task.
        &quot;taskExecutionStrategy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution strategy of this task.
        &quot;taskId&quot;: &quot;A String&quot;, # Required. The identifier of this task within its parent event config, specified by the client. This should be unique among all the tasks belong to the same event config. We use this field as the identifier to find next tasks (via field `next_tasks.task_id`).
        &quot;taskTemplate&quot;: &quot;A String&quot;, # Optional. Used to define task-template name if task is of type task-template
      },
      &quot;taskNumber&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task in integration which will be mocked by this test task config
    },
  ],
  &quot;triggerConfig&quot;: { # Configuration detail of a trigger. # Optional. Auto-generated.
    &quot;alertConfig&quot;: [ # Optional. An alert threshold configuration for the [trigger + client + integration] tuple. If these values are not specified in the trigger config, default values will be populated by the system. Note that there must be exactly one alert threshold configured per [client + trigger + integration] when published.
      { # Message to be used to configure custom alerting in the {@code EventConfig} protos for an event.
        &quot;aggregationPeriod&quot;: &quot;A String&quot;, # The period over which the metric value should be aggregated and evaluated. Format is , where integer should be a positive integer and unit should be one of (s,m,h,d,w) meaning (second, minute, hour, day, week). For an EXPECTED_MIN threshold, this aggregation_period must be lesser than 24 hours.
        &quot;alertThreshold&quot;: 42, # For how many contiguous aggregation periods should the expected min or max be violated for the alert to be fired.
        &quot;disableAlert&quot;: True or False, # Set to false by default. When set to true, the metrics are not aggregated or pushed to Monarch for this integration alert.
        &quot;displayName&quot;: &quot;A String&quot;, # Name of the alert. This will be displayed in the alert subject. If set, this name should be unique within the scope of the integration.
        &quot;durationThreshold&quot;: &quot;A String&quot;, # Should be specified only for *AVERAGE_DURATION and *PERCENTILE_DURATION metrics. This member should be used to specify what duration value the metrics should exceed for the alert to trigger.
        &quot;metricType&quot;: &quot;A String&quot;, # The type of metric.
        &quot;onlyFinalAttempt&quot;: True or False, # For either events or tasks, depending on the type of alert, count only final attempts, not retries.
        &quot;thresholdType&quot;: &quot;A String&quot;, # The threshold type, whether lower(expected_min) or upper(expected_max), for which this alert is being configured. If value falls below expected_min or exceeds expected_max, an alert will be fired.
        &quot;thresholdValue&quot;: { # The threshold value of the metric, above or below which the alert should be triggered. See EventAlertConfig or TaskAlertConfig for the different alert metric types in each case. For the *RATE metrics, one or both of these fields may be set. Zero is the default value and can be left at that. For *PERCENTILE_DURATION metrics, one or both of these fields may be set, and also, the duration threshold value should be specified in the threshold_duration_ms member below. For *AVERAGE_DURATION metrics, these fields should not be set at all. A different member, threshold_duration_ms, must be set in the EventAlertConfig or the TaskAlertConfig. # The metric value, above or below which the alert should be triggered.
          &quot;absolute&quot;: &quot;A String&quot;, # Absolute value threshold.
          &quot;percentage&quot;: 42, # Percentage threshold.
        },
      },
    ],
    &quot;cloudSchedulerConfig&quot;: { # Cloud Scheduler Trigger configuration # Optional. Cloud Scheduler Trigger related metadata
      &quot;cronTab&quot;: &quot;A String&quot;, # Required. The cron tab of cloud scheduler trigger.
      &quot;errorMessage&quot;: &quot;A String&quot;, # Optional. When the job was deleted from Pantheon UI, error_message will be populated when Get/List integrations
      &quot;location&quot;: &quot;A String&quot;, # Required. The location where associated cloud scheduler job will be created
      &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # Required. Service account used by Cloud Scheduler to trigger the integration at scheduled time
    },
    &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
    &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
    &quot;inputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of input variables for the api trigger.
      &quot;names&quot;: [ # Optional. List of variable names.
        &quot;A String&quot;,
      ],
    },
    &quot;label&quot;: &quot;A String&quot;, # Optional. The user created label for a particular trigger.
    &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. Dictates how next tasks will be executed.
    &quot;outputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of output variables for the api trigger.
      &quot;names&quot;: [ # Optional. List of variable names.
        &quot;A String&quot;,
      ],
    },
    &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
      &quot;x&quot;: 42, # Required. X axis of the coordinate
      &quot;y&quot;: 42, # Required. Y axis of the coordinate
    },
    &quot;properties&quot;: { # Optional. Configurable properties of the trigger, not to be confused with integration parameters. E.g. &quot;name&quot; is a property for API triggers and &quot;subscription&quot; is a property for Pub/sub triggers.
      &quot;a_key&quot;: &quot;A String&quot;,
    },
    &quot;startTasks&quot;: [ # Optional. Set of tasks numbers from where the integration execution is started by this trigger. If this is empty, then integration is executed with default start tasks. In the list of start tasks, none of two tasks can have direct ancestor-descendant relationships (i.e. in a same integration execution graph).
      { # The task that is next in line to be executed, if the condition specified evaluated to true.
        &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
        &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
        &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
        &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
        &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
      },
    ],
    &quot;trigger&quot;: &quot;A String&quot;, # Optional. Name of the trigger. Example: &quot;API Trigger&quot;, &quot;Cloud Pub Sub Trigger&quot; When set will be sent out to monitoring dashabord for tracking purpose.
    &quot;triggerId&quot;: &quot;A String&quot;, # Optional. Auto-generated trigger ID. The ID is based on the properties that you define in the trigger config. For example, for an API trigger, the trigger ID follows the format: api_trigger/TRIGGER_NAME Where trigger config has properties with value {&quot;Trigger name&quot;: TRIGGER_NAME}
    &quot;triggerNumber&quot;: &quot;A String&quot;, # Required. A number to uniquely identify each trigger config within the integration on UI.
    &quot;triggerType&quot;: &quot;A String&quot;, # Optional. Type of trigger
  },
  &quot;triggerId&quot;: &quot;A String&quot;, # Required. This defines the trigger ID in workflow which is considered to be executed as starting point of the test case
  &quot;updateTime&quot;: &quot;A String&quot;, # Auto-generated.
}

  updateMask: string, Optional. Field mask specifying the fields in the above integration that have been modified and need to be updated.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Defines the functional test case for Application Integration. Next available id: 15
  &quot;createTime&quot;: &quot;A String&quot;, # Auto-generated.
  &quot;creatorEmail&quot;: &quot;A String&quot;, # Optional. The creator&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;databasePersistencePolicy&quot;: &quot;A String&quot;, # Optional. Various policies for how to persist the test execution info including execution info, execution export info, execution metadata index and execution param index..
  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the test case.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of test case.
  &quot;lastModifierEmail&quot;: &quot;A String&quot;, # The last modifier&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;lockHolderEmail&quot;: &quot;A String&quot;, # Optional. The edit lock holder&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;name&quot;: &quot;A String&quot;, # Output only. Auto-generated primary key.
  &quot;testInputParameters&quot;: [ # Optional. Parameters that are expected to be passed to the test case when the test case is triggered. This gives the user the ability to provide default values. This should include all the output variables of the trigger as input variables.
    { # Integration Parameter is defined in the integration config and are used to provide information about data types of the expected parameters and provide any default values if needed. They can also be used to add custom attributes. These are static in nature and should not be used for dynamic event definition.
      &quot;containsLargeData&quot;: True or False, # Indicates whether this variable contains large data and need to be uploaded to Cloud Storage.
      &quot;dataType&quot;: &quot;A String&quot;, # Type of the parameter.
      &quot;defaultValue&quot;: { # The type of the parameter. # Default values for the defined keys. Each value can either be string, int, double or any proto message or a serialized object.
        &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
          &quot;booleanValues&quot;: [ # Boolean array.
            True or False,
          ],
        },
        &quot;booleanValue&quot;: True or False, # Boolean.
        &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
          &quot;doubleValues&quot;: [ # Double number array.
            3.14,
          ],
        },
        &quot;doubleValue&quot;: 3.14, # Double Number.
        &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
          &quot;intValues&quot;: [ # Integer array.
            &quot;A String&quot;,
          ],
        },
        &quot;intValue&quot;: &quot;A String&quot;, # Integer.
        &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
        &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
          &quot;stringValues&quot;: [ # String array.
            &quot;A String&quot;,
          ],
        },
        &quot;stringValue&quot;: &quot;A String&quot;, # String.
      },
      &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the parameter.
      &quot;displayName&quot;: &quot;A String&quot;, # The name (without prefix) to be displayed in the UI for this parameter. E.g. if the key is &quot;foo.bar.myName&quot;, then the name would be &quot;myName&quot;.
      &quot;inputOutputType&quot;: &quot;A String&quot;, # Specifies the input/output type for the parameter.
      &quot;isTransient&quot;: True or False, # Whether this parameter is a transient parameter.
      &quot;jsonSchema&quot;: &quot;A String&quot;, # This schema will be used to validate runtime JSON-typed values of this parameter.
      &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
      &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
      &quot;producer&quot;: &quot;A String&quot;, # The identifier of the node (TaskConfig/TriggerConfig) this parameter was produced by, if it is a transient param or a copy of an input param.
      &quot;searchable&quot;: True or False, # Searchable in the execution log or not.
    },
  ],
  &quot;testTaskConfigs&quot;: [ # Optional. However, the test case doesn&#x27;t mock or assert anything without test_task_configs.
    { # The task mock configuration details and assertions for functional tests. Next available id: 6
      &quot;assertions&quot;: [ # Optional. List of conditions or expressions which should be evaluated to true unless there is a bug/problem in the integration. These are evaluated one the task execution is completed as per the mock strategy in test case
        { # An assertion which will check for a condition over task execution status or an expression for task output variables
          &quot;assertionStrategy&quot;: &quot;A String&quot;, # Optional. The type of assertion to perform.
          &quot;condition&quot;: &quot;A String&quot;, # Optional. Standard filter expression for ASSERT_CONDITION to succeed
          &quot;parameter&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4 # Optional. Key-value pair for ASSERT_EQUALS, ASSERT_NOT_EQUALS, ASSERT_CONTAINS to succeed
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
          &quot;retryCount&quot;: 42, # Number of times given task should be retried in case of ASSERT_FAILED_EXECUTION
        },
      ],
      &quot;mockConfig&quot;: { # The configuration for mocking of a task during test execution Next available id: 4 # Optional. Defines how to mock the given task during test execution
        &quot;failedExecutions&quot;: &quot;A String&quot;, # Optional. Number of times the given task should fail for failure mock strategy
        &quot;mockStrategy&quot;: &quot;A String&quot;, # Mockstrategy defines how the particular task should be mocked during test execution
        &quot;parameters&quot;: [ # Optional. List of key-value pairs for specific mock strategy
          { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
        ],
      },
      &quot;task&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task name in integration which will be mocked by this test task config
      &quot;taskConfig&quot;: { # The task configuration details. This is not the implementation of Task. There might be multiple TaskConfigs for the same Task. # Optional. Auto-generated.
        &quot;conditionalFailurePolicies&quot;: { # Conditional task failur retry strategies # Optional. The list of conditional failure policies that will be applied to the task in order.
          &quot;defaultFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # The default failure policy to be applied if no conditional failure policy matches.
            &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
            &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
            &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
            &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
          },
          &quot;failurePolicies&quot;: [ # The list of failure policies that will be applied to the task in order.
            { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied).
              &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
              &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
              &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
              &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
            },
          ],
        },
        &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
        &quot;displayName&quot;: &quot;A String&quot;, # Optional. User-provided label that is attached to this TaskConfig in the UI.
        &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
        &quot;externalTaskType&quot;: &quot;A String&quot;, # Optional. External task type of the task
        &quot;failurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for asynchronous calls to Eventbus alone (Post To Queue, Schedule etc.).
          &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
          &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
          &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
          &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
        },
        &quot;jsonValidationOption&quot;: &quot;A String&quot;, # Optional. If set, overrides the option configured in the Task implementation class.
        &quot;nextTasks&quot;: [ # Optional. The set of tasks that are next in line to be executed as per the execution graph defined for the parent event, specified by `event_config_id`. Each of these next tasks are executed only if the condition associated with them evaluates to true.
          { # The task that is next in line to be executed, if the condition specified evaluated to true.
            &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
            &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
            &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
            &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
            &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
          },
        ],
        &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution of the next set of tasks for the current task.
        &quot;parameters&quot;: { # Optional. The customized parameters the user can pass to this task.
          &quot;a_key&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
        },
        &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
          &quot;x&quot;: 42, # Required. X axis of the coordinate
          &quot;y&quot;: 42, # Required. Y axis of the coordinate
        },
        &quot;successPolicy&quot;: { # Policy that dictates the behavior for the task after it completes successfully. # Optional. Determines what action to take upon successful task completion.
          &quot;finalState&quot;: &quot;A String&quot;, # State to which the execution snapshot status will be set if the task succeeds.
        },
        &quot;synchronousCallFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for synchronous calls to Eventbus alone (Post).
          &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
          &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
          &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
          &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
        },
        &quot;task&quot;: &quot;A String&quot;, # Optional. The name for the task.
        &quot;taskExecutionStrategy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution strategy of this task.
        &quot;taskId&quot;: &quot;A String&quot;, # Required. The identifier of this task within its parent event config, specified by the client. This should be unique among all the tasks belong to the same event config. We use this field as the identifier to find next tasks (via field `next_tasks.task_id`).
        &quot;taskTemplate&quot;: &quot;A String&quot;, # Optional. Used to define task-template name if task is of type task-template
      },
      &quot;taskNumber&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task in integration which will be mocked by this test task config
    },
  ],
  &quot;triggerConfig&quot;: { # Configuration detail of a trigger. # Optional. Auto-generated.
    &quot;alertConfig&quot;: [ # Optional. An alert threshold configuration for the [trigger + client + integration] tuple. If these values are not specified in the trigger config, default values will be populated by the system. Note that there must be exactly one alert threshold configured per [client + trigger + integration] when published.
      { # Message to be used to configure custom alerting in the {@code EventConfig} protos for an event.
        &quot;aggregationPeriod&quot;: &quot;A String&quot;, # The period over which the metric value should be aggregated and evaluated. Format is , where integer should be a positive integer and unit should be one of (s,m,h,d,w) meaning (second, minute, hour, day, week). For an EXPECTED_MIN threshold, this aggregation_period must be lesser than 24 hours.
        &quot;alertThreshold&quot;: 42, # For how many contiguous aggregation periods should the expected min or max be violated for the alert to be fired.
        &quot;disableAlert&quot;: True or False, # Set to false by default. When set to true, the metrics are not aggregated or pushed to Monarch for this integration alert.
        &quot;displayName&quot;: &quot;A String&quot;, # Name of the alert. This will be displayed in the alert subject. If set, this name should be unique within the scope of the integration.
        &quot;durationThreshold&quot;: &quot;A String&quot;, # Should be specified only for *AVERAGE_DURATION and *PERCENTILE_DURATION metrics. This member should be used to specify what duration value the metrics should exceed for the alert to trigger.
        &quot;metricType&quot;: &quot;A String&quot;, # The type of metric.
        &quot;onlyFinalAttempt&quot;: True or False, # For either events or tasks, depending on the type of alert, count only final attempts, not retries.
        &quot;thresholdType&quot;: &quot;A String&quot;, # The threshold type, whether lower(expected_min) or upper(expected_max), for which this alert is being configured. If value falls below expected_min or exceeds expected_max, an alert will be fired.
        &quot;thresholdValue&quot;: { # The threshold value of the metric, above or below which the alert should be triggered. See EventAlertConfig or TaskAlertConfig for the different alert metric types in each case. For the *RATE metrics, one or both of these fields may be set. Zero is the default value and can be left at that. For *PERCENTILE_DURATION metrics, one or both of these fields may be set, and also, the duration threshold value should be specified in the threshold_duration_ms member below. For *AVERAGE_DURATION metrics, these fields should not be set at all. A different member, threshold_duration_ms, must be set in the EventAlertConfig or the TaskAlertConfig. # The metric value, above or below which the alert should be triggered.
          &quot;absolute&quot;: &quot;A String&quot;, # Absolute value threshold.
          &quot;percentage&quot;: 42, # Percentage threshold.
        },
      },
    ],
    &quot;cloudSchedulerConfig&quot;: { # Cloud Scheduler Trigger configuration # Optional. Cloud Scheduler Trigger related metadata
      &quot;cronTab&quot;: &quot;A String&quot;, # Required. The cron tab of cloud scheduler trigger.
      &quot;errorMessage&quot;: &quot;A String&quot;, # Optional. When the job was deleted from Pantheon UI, error_message will be populated when Get/List integrations
      &quot;location&quot;: &quot;A String&quot;, # Required. The location where associated cloud scheduler job will be created
      &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # Required. Service account used by Cloud Scheduler to trigger the integration at scheduled time
    },
    &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
    &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
    &quot;inputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of input variables for the api trigger.
      &quot;names&quot;: [ # Optional. List of variable names.
        &quot;A String&quot;,
      ],
    },
    &quot;label&quot;: &quot;A String&quot;, # Optional. The user created label for a particular trigger.
    &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. Dictates how next tasks will be executed.
    &quot;outputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of output variables for the api trigger.
      &quot;names&quot;: [ # Optional. List of variable names.
        &quot;A String&quot;,
      ],
    },
    &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
      &quot;x&quot;: 42, # Required. X axis of the coordinate
      &quot;y&quot;: 42, # Required. Y axis of the coordinate
    },
    &quot;properties&quot;: { # Optional. Configurable properties of the trigger, not to be confused with integration parameters. E.g. &quot;name&quot; is a property for API triggers and &quot;subscription&quot; is a property for Pub/sub triggers.
      &quot;a_key&quot;: &quot;A String&quot;,
    },
    &quot;startTasks&quot;: [ # Optional. Set of tasks numbers from where the integration execution is started by this trigger. If this is empty, then integration is executed with default start tasks. In the list of start tasks, none of two tasks can have direct ancestor-descendant relationships (i.e. in a same integration execution graph).
      { # The task that is next in line to be executed, if the condition specified evaluated to true.
        &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
        &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
        &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
        &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
        &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
      },
    ],
    &quot;trigger&quot;: &quot;A String&quot;, # Optional. Name of the trigger. Example: &quot;API Trigger&quot;, &quot;Cloud Pub Sub Trigger&quot; When set will be sent out to monitoring dashabord for tracking purpose.
    &quot;triggerId&quot;: &quot;A String&quot;, # Optional. Auto-generated trigger ID. The ID is based on the properties that you define in the trigger config. For example, for an API trigger, the trigger ID follows the format: api_trigger/TRIGGER_NAME Where trigger config has properties with value {&quot;Trigger name&quot;: TRIGGER_NAME}
    &quot;triggerNumber&quot;: &quot;A String&quot;, # Required. A number to uniquely identify each trigger config within the integration on UI.
    &quot;triggerType&quot;: &quot;A String&quot;, # Optional. Type of trigger
  },
  &quot;triggerId&quot;: &quot;A String&quot;, # Required. This defines the trigger ID in workflow which is considered to be executed as starting point of the test case
  &quot;updateTime&quot;: &quot;A String&quot;, # Auto-generated.
}</pre>
</div>

<div class="method">
    <code class="details" id="takeoverEditLock">takeoverEditLock(name, body=None, x__xgafv=None)</code>
  <pre>Clear the lock fields and assign them to current user

Args:
  name: string, Required. The ID of test case to takeover edit lock. Format: projects/{project}/locations/{location}/integrations/{integration}/versions/{integration_version}/testCases/{test_case_id} (required)
  body: object, The request body.
    The object takes the form of:

{ # Request for TakeoverTestCaseEditLock.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Defines the functional test case for Application Integration. Next available id: 15
  &quot;createTime&quot;: &quot;A String&quot;, # Auto-generated.
  &quot;creatorEmail&quot;: &quot;A String&quot;, # Optional. The creator&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;databasePersistencePolicy&quot;: &quot;A String&quot;, # Optional. Various policies for how to persist the test execution info including execution info, execution export info, execution metadata index and execution param index..
  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the test case.
  &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of test case.
  &quot;lastModifierEmail&quot;: &quot;A String&quot;, # The last modifier&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;lockHolderEmail&quot;: &quot;A String&quot;, # Optional. The edit lock holder&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
  &quot;name&quot;: &quot;A String&quot;, # Output only. Auto-generated primary key.
  &quot;testInputParameters&quot;: [ # Optional. Parameters that are expected to be passed to the test case when the test case is triggered. This gives the user the ability to provide default values. This should include all the output variables of the trigger as input variables.
    { # Integration Parameter is defined in the integration config and are used to provide information about data types of the expected parameters and provide any default values if needed. They can also be used to add custom attributes. These are static in nature and should not be used for dynamic event definition.
      &quot;containsLargeData&quot;: True or False, # Indicates whether this variable contains large data and need to be uploaded to Cloud Storage.
      &quot;dataType&quot;: &quot;A String&quot;, # Type of the parameter.
      &quot;defaultValue&quot;: { # The type of the parameter. # Default values for the defined keys. Each value can either be string, int, double or any proto message or a serialized object.
        &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
          &quot;booleanValues&quot;: [ # Boolean array.
            True or False,
          ],
        },
        &quot;booleanValue&quot;: True or False, # Boolean.
        &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
          &quot;doubleValues&quot;: [ # Double number array.
            3.14,
          ],
        },
        &quot;doubleValue&quot;: 3.14, # Double Number.
        &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
          &quot;intValues&quot;: [ # Integer array.
            &quot;A String&quot;,
          ],
        },
        &quot;intValue&quot;: &quot;A String&quot;, # Integer.
        &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
        &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
          &quot;stringValues&quot;: [ # String array.
            &quot;A String&quot;,
          ],
        },
        &quot;stringValue&quot;: &quot;A String&quot;, # String.
      },
      &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the parameter.
      &quot;displayName&quot;: &quot;A String&quot;, # The name (without prefix) to be displayed in the UI for this parameter. E.g. if the key is &quot;foo.bar.myName&quot;, then the name would be &quot;myName&quot;.
      &quot;inputOutputType&quot;: &quot;A String&quot;, # Specifies the input/output type for the parameter.
      &quot;isTransient&quot;: True or False, # Whether this parameter is a transient parameter.
      &quot;jsonSchema&quot;: &quot;A String&quot;, # This schema will be used to validate runtime JSON-typed values of this parameter.
      &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
      &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
      &quot;producer&quot;: &quot;A String&quot;, # The identifier of the node (TaskConfig/TriggerConfig) this parameter was produced by, if it is a transient param or a copy of an input param.
      &quot;searchable&quot;: True or False, # Searchable in the execution log or not.
    },
  ],
  &quot;testTaskConfigs&quot;: [ # Optional. However, the test case doesn&#x27;t mock or assert anything without test_task_configs.
    { # The task mock configuration details and assertions for functional tests. Next available id: 6
      &quot;assertions&quot;: [ # Optional. List of conditions or expressions which should be evaluated to true unless there is a bug/problem in the integration. These are evaluated one the task execution is completed as per the mock strategy in test case
        { # An assertion which will check for a condition over task execution status or an expression for task output variables
          &quot;assertionStrategy&quot;: &quot;A String&quot;, # Optional. The type of assertion to perform.
          &quot;condition&quot;: &quot;A String&quot;, # Optional. Standard filter expression for ASSERT_CONDITION to succeed
          &quot;parameter&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4 # Optional. Key-value pair for ASSERT_EQUALS, ASSERT_NOT_EQUALS, ASSERT_CONTAINS to succeed
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
          &quot;retryCount&quot;: 42, # Number of times given task should be retried in case of ASSERT_FAILED_EXECUTION
        },
      ],
      &quot;mockConfig&quot;: { # The configuration for mocking of a task during test execution Next available id: 4 # Optional. Defines how to mock the given task during test execution
        &quot;failedExecutions&quot;: &quot;A String&quot;, # Optional. Number of times the given task should fail for failure mock strategy
        &quot;mockStrategy&quot;: &quot;A String&quot;, # Mockstrategy defines how the particular task should be mocked during test execution
        &quot;parameters&quot;: [ # Optional. List of key-value pairs for specific mock strategy
          { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
        ],
      },
      &quot;task&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task name in integration which will be mocked by this test task config
      &quot;taskConfig&quot;: { # The task configuration details. This is not the implementation of Task. There might be multiple TaskConfigs for the same Task. # Optional. Auto-generated.
        &quot;conditionalFailurePolicies&quot;: { # Conditional task failur retry strategies # Optional. The list of conditional failure policies that will be applied to the task in order.
          &quot;defaultFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # The default failure policy to be applied if no conditional failure policy matches.
            &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
            &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
            &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
            &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
          },
          &quot;failurePolicies&quot;: [ # The list of failure policies that will be applied to the task in order.
            { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied).
              &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
              &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
              &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
              &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
            },
          ],
        },
        &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
        &quot;displayName&quot;: &quot;A String&quot;, # Optional. User-provided label that is attached to this TaskConfig in the UI.
        &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
        &quot;externalTaskType&quot;: &quot;A String&quot;, # Optional. External task type of the task
        &quot;failurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for asynchronous calls to Eventbus alone (Post To Queue, Schedule etc.).
          &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
          &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
          &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
          &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
        },
        &quot;jsonValidationOption&quot;: &quot;A String&quot;, # Optional. If set, overrides the option configured in the Task implementation class.
        &quot;nextTasks&quot;: [ # Optional. The set of tasks that are next in line to be executed as per the execution graph defined for the parent event, specified by `event_config_id`. Each of these next tasks are executed only if the condition associated with them evaluates to true.
          { # The task that is next in line to be executed, if the condition specified evaluated to true.
            &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
            &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
            &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
            &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
            &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
          },
        ],
        &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution of the next set of tasks for the current task.
        &quot;parameters&quot;: { # Optional. The customized parameters the user can pass to this task.
          &quot;a_key&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
            &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
            &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
            &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
              &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                &quot;booleanValues&quot;: [ # Boolean array.
                  True or False,
                ],
              },
              &quot;booleanValue&quot;: True or False, # Boolean.
              &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                &quot;doubleValues&quot;: [ # Double number array.
                  3.14,
                ],
              },
              &quot;doubleValue&quot;: 3.14, # Double Number.
              &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                &quot;intValues&quot;: [ # Integer array.
                  &quot;A String&quot;,
                ],
              },
              &quot;intValue&quot;: &quot;A String&quot;, # Integer.
              &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
              &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                &quot;stringValues&quot;: [ # String array.
                  &quot;A String&quot;,
                ],
              },
              &quot;stringValue&quot;: &quot;A String&quot;, # String.
            },
          },
        },
        &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
          &quot;x&quot;: 42, # Required. X axis of the coordinate
          &quot;y&quot;: 42, # Required. Y axis of the coordinate
        },
        &quot;successPolicy&quot;: { # Policy that dictates the behavior for the task after it completes successfully. # Optional. Determines what action to take upon successful task completion.
          &quot;finalState&quot;: &quot;A String&quot;, # State to which the execution snapshot status will be set if the task succeeds.
        },
        &quot;synchronousCallFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for synchronous calls to Eventbus alone (Post).
          &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
          &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
          &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
          &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
        },
        &quot;task&quot;: &quot;A String&quot;, # Optional. The name for the task.
        &quot;taskExecutionStrategy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution strategy of this task.
        &quot;taskId&quot;: &quot;A String&quot;, # Required. The identifier of this task within its parent event config, specified by the client. This should be unique among all the tasks belong to the same event config. We use this field as the identifier to find next tasks (via field `next_tasks.task_id`).
        &quot;taskTemplate&quot;: &quot;A String&quot;, # Optional. Used to define task-template name if task is of type task-template
      },
      &quot;taskNumber&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task in integration which will be mocked by this test task config
    },
  ],
  &quot;triggerConfig&quot;: { # Configuration detail of a trigger. # Optional. Auto-generated.
    &quot;alertConfig&quot;: [ # Optional. An alert threshold configuration for the [trigger + client + integration] tuple. If these values are not specified in the trigger config, default values will be populated by the system. Note that there must be exactly one alert threshold configured per [client + trigger + integration] when published.
      { # Message to be used to configure custom alerting in the {@code EventConfig} protos for an event.
        &quot;aggregationPeriod&quot;: &quot;A String&quot;, # The period over which the metric value should be aggregated and evaluated. Format is , where integer should be a positive integer and unit should be one of (s,m,h,d,w) meaning (second, minute, hour, day, week). For an EXPECTED_MIN threshold, this aggregation_period must be lesser than 24 hours.
        &quot;alertThreshold&quot;: 42, # For how many contiguous aggregation periods should the expected min or max be violated for the alert to be fired.
        &quot;disableAlert&quot;: True or False, # Set to false by default. When set to true, the metrics are not aggregated or pushed to Monarch for this integration alert.
        &quot;displayName&quot;: &quot;A String&quot;, # Name of the alert. This will be displayed in the alert subject. If set, this name should be unique within the scope of the integration.
        &quot;durationThreshold&quot;: &quot;A String&quot;, # Should be specified only for *AVERAGE_DURATION and *PERCENTILE_DURATION metrics. This member should be used to specify what duration value the metrics should exceed for the alert to trigger.
        &quot;metricType&quot;: &quot;A String&quot;, # The type of metric.
        &quot;onlyFinalAttempt&quot;: True or False, # For either events or tasks, depending on the type of alert, count only final attempts, not retries.
        &quot;thresholdType&quot;: &quot;A String&quot;, # The threshold type, whether lower(expected_min) or upper(expected_max), for which this alert is being configured. If value falls below expected_min or exceeds expected_max, an alert will be fired.
        &quot;thresholdValue&quot;: { # The threshold value of the metric, above or below which the alert should be triggered. See EventAlertConfig or TaskAlertConfig for the different alert metric types in each case. For the *RATE metrics, one or both of these fields may be set. Zero is the default value and can be left at that. For *PERCENTILE_DURATION metrics, one or both of these fields may be set, and also, the duration threshold value should be specified in the threshold_duration_ms member below. For *AVERAGE_DURATION metrics, these fields should not be set at all. A different member, threshold_duration_ms, must be set in the EventAlertConfig or the TaskAlertConfig. # The metric value, above or below which the alert should be triggered.
          &quot;absolute&quot;: &quot;A String&quot;, # Absolute value threshold.
          &quot;percentage&quot;: 42, # Percentage threshold.
        },
      },
    ],
    &quot;cloudSchedulerConfig&quot;: { # Cloud Scheduler Trigger configuration # Optional. Cloud Scheduler Trigger related metadata
      &quot;cronTab&quot;: &quot;A String&quot;, # Required. The cron tab of cloud scheduler trigger.
      &quot;errorMessage&quot;: &quot;A String&quot;, # Optional. When the job was deleted from Pantheon UI, error_message will be populated when Get/List integrations
      &quot;location&quot;: &quot;A String&quot;, # Required. The location where associated cloud scheduler job will be created
      &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # Required. Service account used by Cloud Scheduler to trigger the integration at scheduled time
    },
    &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
    &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
    &quot;inputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of input variables for the api trigger.
      &quot;names&quot;: [ # Optional. List of variable names.
        &quot;A String&quot;,
      ],
    },
    &quot;label&quot;: &quot;A String&quot;, # Optional. The user created label for a particular trigger.
    &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. Dictates how next tasks will be executed.
    &quot;outputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of output variables for the api trigger.
      &quot;names&quot;: [ # Optional. List of variable names.
        &quot;A String&quot;,
      ],
    },
    &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
      &quot;x&quot;: 42, # Required. X axis of the coordinate
      &quot;y&quot;: 42, # Required. Y axis of the coordinate
    },
    &quot;properties&quot;: { # Optional. Configurable properties of the trigger, not to be confused with integration parameters. E.g. &quot;name&quot; is a property for API triggers and &quot;subscription&quot; is a property for Pub/sub triggers.
      &quot;a_key&quot;: &quot;A String&quot;,
    },
    &quot;startTasks&quot;: [ # Optional. Set of tasks numbers from where the integration execution is started by this trigger. If this is empty, then integration is executed with default start tasks. In the list of start tasks, none of two tasks can have direct ancestor-descendant relationships (i.e. in a same integration execution graph).
      { # The task that is next in line to be executed, if the condition specified evaluated to true.
        &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
        &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
        &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
        &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
        &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
      },
    ],
    &quot;trigger&quot;: &quot;A String&quot;, # Optional. Name of the trigger. Example: &quot;API Trigger&quot;, &quot;Cloud Pub Sub Trigger&quot; When set will be sent out to monitoring dashabord for tracking purpose.
    &quot;triggerId&quot;: &quot;A String&quot;, # Optional. Auto-generated trigger ID. The ID is based on the properties that you define in the trigger config. For example, for an API trigger, the trigger ID follows the format: api_trigger/TRIGGER_NAME Where trigger config has properties with value {&quot;Trigger name&quot;: TRIGGER_NAME}
    &quot;triggerNumber&quot;: &quot;A String&quot;, # Required. A number to uniquely identify each trigger config within the integration on UI.
    &quot;triggerType&quot;: &quot;A String&quot;, # Optional. Type of trigger
  },
  &quot;triggerId&quot;: &quot;A String&quot;, # Required. This defines the trigger ID in workflow which is considered to be executed as starting point of the test case
  &quot;updateTime&quot;: &quot;A String&quot;, # Auto-generated.
}</pre>
</div>

<div class="method">
    <code class="details" id="upload">upload(parent, body=None, x__xgafv=None)</code>
  <pre>Uploads a test case. The content can be a previously downloaded test case. Performs the same function as CreateTestCase, but accepts input in a string format, which holds the complete representation of the TestCase content.

Args:
  parent: string, Required. The test case to upload. Format: projects/{project}/locations/{location}/integrations/{integration}/versions/{integration_version} (required)
  body: object, The request body.
    The object takes the form of:

{ # Request for UploadTestCase.
  &quot;content&quot;: &quot;A String&quot;, # The textproto of the test case.
  &quot;fileFormat&quot;: &quot;A String&quot;, # File format for upload request.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response for UploadTestCase.
  &quot;testCase&quot;: { # Defines the functional test case for Application Integration. Next available id: 15 # The uploaded TestCase
    &quot;createTime&quot;: &quot;A String&quot;, # Auto-generated.
    &quot;creatorEmail&quot;: &quot;A String&quot;, # Optional. The creator&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
    &quot;databasePersistencePolicy&quot;: &quot;A String&quot;, # Optional. Various policies for how to persist the test execution info including execution info, execution export info, execution metadata index and execution param index..
    &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the test case.
    &quot;displayName&quot;: &quot;A String&quot;, # Required. The display name of test case.
    &quot;lastModifierEmail&quot;: &quot;A String&quot;, # The last modifier&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
    &quot;lockHolderEmail&quot;: &quot;A String&quot;, # Optional. The edit lock holder&#x27;s email address. Generated based on the End User Credentials/LOAS role of the user making the call.
    &quot;name&quot;: &quot;A String&quot;, # Output only. Auto-generated primary key.
    &quot;testInputParameters&quot;: [ # Optional. Parameters that are expected to be passed to the test case when the test case is triggered. This gives the user the ability to provide default values. This should include all the output variables of the trigger as input variables.
      { # Integration Parameter is defined in the integration config and are used to provide information about data types of the expected parameters and provide any default values if needed. They can also be used to add custom attributes. These are static in nature and should not be used for dynamic event definition.
        &quot;containsLargeData&quot;: True or False, # Indicates whether this variable contains large data and need to be uploaded to Cloud Storage.
        &quot;dataType&quot;: &quot;A String&quot;, # Type of the parameter.
        &quot;defaultValue&quot;: { # The type of the parameter. # Default values for the defined keys. Each value can either be string, int, double or any proto message or a serialized object.
          &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
            &quot;booleanValues&quot;: [ # Boolean array.
              True or False,
            ],
          },
          &quot;booleanValue&quot;: True or False, # Boolean.
          &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
            &quot;doubleValues&quot;: [ # Double number array.
              3.14,
            ],
          },
          &quot;doubleValue&quot;: 3.14, # Double Number.
          &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
            &quot;intValues&quot;: [ # Integer array.
              &quot;A String&quot;,
            ],
          },
          &quot;intValue&quot;: &quot;A String&quot;, # Integer.
          &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
          &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
            &quot;stringValues&quot;: [ # String array.
              &quot;A String&quot;,
            ],
          },
          &quot;stringValue&quot;: &quot;A String&quot;, # String.
        },
        &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the parameter.
        &quot;displayName&quot;: &quot;A String&quot;, # The name (without prefix) to be displayed in the UI for this parameter. E.g. if the key is &quot;foo.bar.myName&quot;, then the name would be &quot;myName&quot;.
        &quot;inputOutputType&quot;: &quot;A String&quot;, # Specifies the input/output type for the parameter.
        &quot;isTransient&quot;: True or False, # Whether this parameter is a transient parameter.
        &quot;jsonSchema&quot;: &quot;A String&quot;, # This schema will be used to validate runtime JSON-typed values of this parameter.
        &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
        &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
        &quot;producer&quot;: &quot;A String&quot;, # The identifier of the node (TaskConfig/TriggerConfig) this parameter was produced by, if it is a transient param or a copy of an input param.
        &quot;searchable&quot;: True or False, # Searchable in the execution log or not.
      },
    ],
    &quot;testTaskConfigs&quot;: [ # Optional. However, the test case doesn&#x27;t mock or assert anything without test_task_configs.
      { # The task mock configuration details and assertions for functional tests. Next available id: 6
        &quot;assertions&quot;: [ # Optional. List of conditions or expressions which should be evaluated to true unless there is a bug/problem in the integration. These are evaluated one the task execution is completed as per the mock strategy in test case
          { # An assertion which will check for a condition over task execution status or an expression for task output variables
            &quot;assertionStrategy&quot;: &quot;A String&quot;, # Optional. The type of assertion to perform.
            &quot;condition&quot;: &quot;A String&quot;, # Optional. Standard filter expression for ASSERT_CONDITION to succeed
            &quot;parameter&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4 # Optional. Key-value pair for ASSERT_EQUALS, ASSERT_NOT_EQUALS, ASSERT_CONTAINS to succeed
              &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
              &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
              &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
                &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                  &quot;booleanValues&quot;: [ # Boolean array.
                    True or False,
                  ],
                },
                &quot;booleanValue&quot;: True or False, # Boolean.
                &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                  &quot;doubleValues&quot;: [ # Double number array.
                    3.14,
                  ],
                },
                &quot;doubleValue&quot;: 3.14, # Double Number.
                &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                  &quot;intValues&quot;: [ # Integer array.
                    &quot;A String&quot;,
                  ],
                },
                &quot;intValue&quot;: &quot;A String&quot;, # Integer.
                &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
                &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                  &quot;stringValues&quot;: [ # String array.
                    &quot;A String&quot;,
                  ],
                },
                &quot;stringValue&quot;: &quot;A String&quot;, # String.
              },
            },
            &quot;retryCount&quot;: 42, # Number of times given task should be retried in case of ASSERT_FAILED_EXECUTION
          },
        ],
        &quot;mockConfig&quot;: { # The configuration for mocking of a task during test execution Next available id: 4 # Optional. Defines how to mock the given task during test execution
          &quot;failedExecutions&quot;: &quot;A String&quot;, # Optional. Number of times the given task should fail for failure mock strategy
          &quot;mockStrategy&quot;: &quot;A String&quot;, # Mockstrategy defines how the particular task should be mocked during test execution
          &quot;parameters&quot;: [ # Optional. List of key-value pairs for specific mock strategy
            { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
              &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
              &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
              &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
                &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                  &quot;booleanValues&quot;: [ # Boolean array.
                    True or False,
                  ],
                },
                &quot;booleanValue&quot;: True or False, # Boolean.
                &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                  &quot;doubleValues&quot;: [ # Double number array.
                    3.14,
                  ],
                },
                &quot;doubleValue&quot;: 3.14, # Double Number.
                &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                  &quot;intValues&quot;: [ # Integer array.
                    &quot;A String&quot;,
                  ],
                },
                &quot;intValue&quot;: &quot;A String&quot;, # Integer.
                &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
                &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                  &quot;stringValues&quot;: [ # String array.
                    &quot;A String&quot;,
                  ],
                },
                &quot;stringValue&quot;: &quot;A String&quot;, # String.
              },
            },
          ],
        },
        &quot;task&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task name in integration which will be mocked by this test task config
        &quot;taskConfig&quot;: { # The task configuration details. This is not the implementation of Task. There might be multiple TaskConfigs for the same Task. # Optional. Auto-generated.
          &quot;conditionalFailurePolicies&quot;: { # Conditional task failur retry strategies # Optional. The list of conditional failure policies that will be applied to the task in order.
            &quot;defaultFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # The default failure policy to be applied if no conditional failure policy matches.
              &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
              &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
              &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
              &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
            },
            &quot;failurePolicies&quot;: [ # The list of failure policies that will be applied to the task in order.
              { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied).
                &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
                &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
                &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
                &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
              },
            ],
          },
          &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
          &quot;displayName&quot;: &quot;A String&quot;, # Optional. User-provided label that is attached to this TaskConfig in the UI.
          &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
          &quot;externalTaskType&quot;: &quot;A String&quot;, # Optional. External task type of the task
          &quot;failurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for asynchronous calls to Eventbus alone (Post To Queue, Schedule etc.).
            &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
            &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
            &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
            &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
          },
          &quot;jsonValidationOption&quot;: &quot;A String&quot;, # Optional. If set, overrides the option configured in the Task implementation class.
          &quot;nextTasks&quot;: [ # Optional. The set of tasks that are next in line to be executed as per the execution graph defined for the parent event, specified by `event_config_id`. Each of these next tasks are executed only if the condition associated with them evaluates to true.
            { # The task that is next in line to be executed, if the condition specified evaluated to true.
              &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
              &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
              &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
              &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
              &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
            },
          ],
          &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution of the next set of tasks for the current task.
          &quot;parameters&quot;: { # Optional. The customized parameters the user can pass to this task.
            &quot;a_key&quot;: { # This message is used for processing and persisting (when applicable) key value pair parameters for each event in the event bus. Next available id: 4
              &quot;key&quot;: &quot;A String&quot;, # Key is used to retrieve the corresponding parameter value. This should be unique for a given fired event. These parameters must be predefined in the integration definition.
              &quot;masked&quot;: True or False, # True if this parameter should be masked in the logs
              &quot;value&quot;: { # The type of the parameter. # Values for the defined keys. Each value can either be string, int, double or any proto message.
                &quot;booleanArray&quot;: { # This message only contains a field of boolean array. # Boolean Array.
                  &quot;booleanValues&quot;: [ # Boolean array.
                    True or False,
                  ],
                },
                &quot;booleanValue&quot;: True or False, # Boolean.
                &quot;doubleArray&quot;: { # This message only contains a field of double number array. # Double Number Array.
                  &quot;doubleValues&quot;: [ # Double number array.
                    3.14,
                  ],
                },
                &quot;doubleValue&quot;: 3.14, # Double Number.
                &quot;intArray&quot;: { # This message only contains a field of integer array. # Integer Array.
                  &quot;intValues&quot;: [ # Integer array.
                    &quot;A String&quot;,
                  ],
                },
                &quot;intValue&quot;: &quot;A String&quot;, # Integer.
                &quot;jsonValue&quot;: &quot;A String&quot;, # Json.
                &quot;stringArray&quot;: { # This message only contains a field of string array. # String Array.
                  &quot;stringValues&quot;: [ # String array.
                    &quot;A String&quot;,
                  ],
                },
                &quot;stringValue&quot;: &quot;A String&quot;, # String.
              },
            },
          },
          &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
            &quot;x&quot;: 42, # Required. X axis of the coordinate
            &quot;y&quot;: 42, # Required. Y axis of the coordinate
          },
          &quot;successPolicy&quot;: { # Policy that dictates the behavior for the task after it completes successfully. # Optional. Determines what action to take upon successful task completion.
            &quot;finalState&quot;: &quot;A String&quot;, # State to which the execution snapshot status will be set if the task succeeds.
          },
          &quot;synchronousCallFailurePolicy&quot;: { # Policy that defines the task retry logic and failure type. If no FailurePolicy is defined for a task, all its dependent tasks will not be executed (i.e, a `retry_strategy` of NONE will be applied). # Optional. Determines the number of times the task will be retried on failure and with what retry strategy. This is applicable for synchronous calls to Eventbus alone (Post).
            &quot;condition&quot;: &quot;A String&quot;, # Optional. The string condition that will be evaluated to determine if the task should be retried with this failure policy.
            &quot;intervalTime&quot;: &quot;A String&quot;, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the initial interval in seconds for backoff.
            &quot;maxRetries&quot;: 42, # Required if retry_strategy is FIXED_INTERVAL or LINEAR/EXPONENTIAL_BACKOFF/RESTART_INTEGRATION_WITH_BACKOFF. Defines the number of times the task will be retried if failed.
            &quot;retryStrategy&quot;: &quot;A String&quot;, # Defines what happens to the task upon failure.
          },
          &quot;task&quot;: &quot;A String&quot;, # Optional. The name for the task.
          &quot;taskExecutionStrategy&quot;: &quot;A String&quot;, # Optional. The policy dictating the execution strategy of this task.
          &quot;taskId&quot;: &quot;A String&quot;, # Required. The identifier of this task within its parent event config, specified by the client. This should be unique among all the tasks belong to the same event config. We use this field as the identifier to find next tasks (via field `next_tasks.task_id`).
          &quot;taskTemplate&quot;: &quot;A String&quot;, # Optional. Used to define task-template name if task is of type task-template
        },
        &quot;taskNumber&quot;: &quot;A String&quot;, # Required. This defines in the test case, the task in integration which will be mocked by this test task config
      },
    ],
    &quot;triggerConfig&quot;: { # Configuration detail of a trigger. # Optional. Auto-generated.
      &quot;alertConfig&quot;: [ # Optional. An alert threshold configuration for the [trigger + client + integration] tuple. If these values are not specified in the trigger config, default values will be populated by the system. Note that there must be exactly one alert threshold configured per [client + trigger + integration] when published.
        { # Message to be used to configure custom alerting in the {@code EventConfig} protos for an event.
          &quot;aggregationPeriod&quot;: &quot;A String&quot;, # The period over which the metric value should be aggregated and evaluated. Format is , where integer should be a positive integer and unit should be one of (s,m,h,d,w) meaning (second, minute, hour, day, week). For an EXPECTED_MIN threshold, this aggregation_period must be lesser than 24 hours.
          &quot;alertThreshold&quot;: 42, # For how many contiguous aggregation periods should the expected min or max be violated for the alert to be fired.
          &quot;disableAlert&quot;: True or False, # Set to false by default. When set to true, the metrics are not aggregated or pushed to Monarch for this integration alert.
          &quot;displayName&quot;: &quot;A String&quot;, # Name of the alert. This will be displayed in the alert subject. If set, this name should be unique within the scope of the integration.
          &quot;durationThreshold&quot;: &quot;A String&quot;, # Should be specified only for *AVERAGE_DURATION and *PERCENTILE_DURATION metrics. This member should be used to specify what duration value the metrics should exceed for the alert to trigger.
          &quot;metricType&quot;: &quot;A String&quot;, # The type of metric.
          &quot;onlyFinalAttempt&quot;: True or False, # For either events or tasks, depending on the type of alert, count only final attempts, not retries.
          &quot;thresholdType&quot;: &quot;A String&quot;, # The threshold type, whether lower(expected_min) or upper(expected_max), for which this alert is being configured. If value falls below expected_min or exceeds expected_max, an alert will be fired.
          &quot;thresholdValue&quot;: { # The threshold value of the metric, above or below which the alert should be triggered. See EventAlertConfig or TaskAlertConfig for the different alert metric types in each case. For the *RATE metrics, one or both of these fields may be set. Zero is the default value and can be left at that. For *PERCENTILE_DURATION metrics, one or both of these fields may be set, and also, the duration threshold value should be specified in the threshold_duration_ms member below. For *AVERAGE_DURATION metrics, these fields should not be set at all. A different member, threshold_duration_ms, must be set in the EventAlertConfig or the TaskAlertConfig. # The metric value, above or below which the alert should be triggered.
            &quot;absolute&quot;: &quot;A String&quot;, # Absolute value threshold.
            &quot;percentage&quot;: 42, # Percentage threshold.
          },
        },
      ],
      &quot;cloudSchedulerConfig&quot;: { # Cloud Scheduler Trigger configuration # Optional. Cloud Scheduler Trigger related metadata
        &quot;cronTab&quot;: &quot;A String&quot;, # Required. The cron tab of cloud scheduler trigger.
        &quot;errorMessage&quot;: &quot;A String&quot;, # Optional. When the job was deleted from Pantheon UI, error_message will be populated when Get/List integrations
        &quot;location&quot;: &quot;A String&quot;, # Required. The location where associated cloud scheduler job will be created
        &quot;serviceAccountEmail&quot;: &quot;A String&quot;, # Required. Service account used by Cloud Scheduler to trigger the integration at scheduled time
      },
      &quot;description&quot;: &quot;A String&quot;, # Optional. User-provided description intended to give additional business context about the task.
      &quot;errorCatcherId&quot;: &quot;A String&quot;, # Optional. Optional Error catcher id of the error catch flow which will be executed when execution error happens in the task
      &quot;inputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of input variables for the api trigger.
        &quot;names&quot;: [ # Optional. List of variable names.
          &quot;A String&quot;,
        ],
      },
      &quot;label&quot;: &quot;A String&quot;, # Optional. The user created label for a particular trigger.
      &quot;nextTasksExecutionPolicy&quot;: &quot;A String&quot;, # Optional. Dictates how next tasks will be executed.
      &quot;outputVariables&quot;: { # Variables names mapped to api trigger. # Optional. List of output variables for the api trigger.
        &quot;names&quot;: [ # Optional. List of variable names.
          &quot;A String&quot;,
        ],
      },
      &quot;position&quot;: { # Configuration detail of coordinate, it used for UI # Optional. Informs the front-end application where to draw this error catcher config on the UI.
        &quot;x&quot;: 42, # Required. X axis of the coordinate
        &quot;y&quot;: 42, # Required. Y axis of the coordinate
      },
      &quot;properties&quot;: { # Optional. Configurable properties of the trigger, not to be confused with integration parameters. E.g. &quot;name&quot; is a property for API triggers and &quot;subscription&quot; is a property for Pub/sub triggers.
        &quot;a_key&quot;: &quot;A String&quot;,
      },
      &quot;startTasks&quot;: [ # Optional. Set of tasks numbers from where the integration execution is started by this trigger. If this is empty, then integration is executed with default start tasks. In the list of start tasks, none of two tasks can have direct ancestor-descendant relationships (i.e. in a same integration execution graph).
        { # The task that is next in line to be executed, if the condition specified evaluated to true.
          &quot;condition&quot;: &quot;A String&quot;, # Standard filter expression for this task to become an eligible next task.
          &quot;description&quot;: &quot;A String&quot;, # User-provided description intended to give additional business context about the task.
          &quot;displayName&quot;: &quot;A String&quot;, # User-provided label that is attached to this edge in the UI.
          &quot;taskConfigId&quot;: &quot;A String&quot;, # ID of the next task.
          &quot;taskId&quot;: &quot;A String&quot;, # Task number of the next task.
        },
      ],
      &quot;trigger&quot;: &quot;A String&quot;, # Optional. Name of the trigger. Example: &quot;API Trigger&quot;, &quot;Cloud Pub Sub Trigger&quot; When set will be sent out to monitoring dashabord for tracking purpose.
      &quot;triggerId&quot;: &quot;A String&quot;, # Optional. Auto-generated trigger ID. The ID is based on the properties that you define in the trigger config. For example, for an API trigger, the trigger ID follows the format: api_trigger/TRIGGER_NAME Where trigger config has properties with value {&quot;Trigger name&quot;: TRIGGER_NAME}
      &quot;triggerNumber&quot;: &quot;A String&quot;, # Required. A number to uniquely identify each trigger config within the integration on UI.
      &quot;triggerType&quot;: &quot;A String&quot;, # Optional. Type of trigger
    },
    &quot;triggerId&quot;: &quot;A String&quot;, # Required. This defines the trigger ID in workflow which is considered to be executed as starting point of the test case
    &quot;updateTime&quot;: &quot;A String&quot;, # Auto-generated.
  },
}</pre>
</div>

</body></html>